В вашем определении Trace
у вас есть --> Trader company
, а в вашем коде вы присваиваете me
(текущий участник) - НО вы обработали транзакцию, используя идентификатор, связанный с администратором сети (org. hyperledger.composer.system.NetworkAdmin)
Вам нужно выполнить транзакцию как трейдер
- Создать нового участника Трейдера
- Выдать ID участника
- Выберите и используйте этот идентификатор
- Выполнить транзакцию
Кстати, я заметил, что вы используете new Date();
в своей транзакции - это пример «недетерминированного» значения, и когда вы переходите к многоуровневой конфигурации, это не удастся. Это не удастся, потому что, когда Fabric запускает транзакцию на Multi-peer и пытается найти консенсус, временные метки будут незначительно отличаться для каждого однорангового узла, и транзакция будет отклонена. По той же причине вы не можете использовать случайные числа в транзакциях.