Skip to content
This repository has been archived by the owner on Dec 22, 2021. It is now read-only.
maheshwarishikha edited this page May 14, 2018 · 14 revisions

Welcome to the blockchain-application-using-fabric-java-sdk wiki!

Short Name

Create and Deploy a Blockchain Network using Hyperledger Fabric SDK Java

Short Description

Demonstrates the methodology to create and deploy a blockchain network using Hyperledger Fabric SDK Java.

Offering Type

Blockchain

Introduction

In a Blockchain solution, the Blockchain network works as a back-end with an application front-end to communicate with the network using a SDK. To set up the communication between front-end and back-end, Hyperledger Fabric community provides a number of SDKs for a variety of programming languages like NodeJS, Java, Python. This code pattern demonstrates how to create, deploy and work with the network using Hyperledger Fabric SDK Java 1.0.

Author

By Shikha Maheshwari, Balaji Kadambi

Code

Demo

N/A

Video

]

Overview

Have you tried anytime to build a Hyperledger Fabric Java blockchain application? Did you face issues or did not find proper documentation for the same? If yes, this code pattern will help you get the process started.

Blockchain is a shared, immutable ledger for recording the history of transactions. Hyperledger is an open-source collaborative effort created to advance cross-industry blockchain technologies. Hyperledger Fabric is a blockchain framework implementation and one of the Hyperledger projects hosted by The Linux Foundation. Hyperledger Fabric platform provides solutions for distributed ledger underpinned by a modular architecture delivering high degrees of confidentiality, resiliency, flexibility and scalability.

In a blockchain solution, the blockchain network works as a back-end with an application front-end to communicate with the network using a SDK. To set up the communication in java between front-end and back-end, Hyperledger Fabric provides Fabric SDK Java. The Fabric Java SDK provides a means to execute user chaincode, query blocks and transactions on the channel, and monitor events on the channel. This code pattern demonstrates how to create, deploy and work with the network using Hyperledger Fabric SDK Java 1.0.

In this pattern, you will learn how to begin the process of building a Hyperledger Fabric blockchain application using the Hyperledger Fabric Java SDK 1.0. The blockchain network is built using docker-compose. This pattern will provision a Hyperledger Fabric 1.1 network consisting of two organizations, each maintaining two peer node, two certificate authorities for each peer and a solo ordering service. This pattern will demonstrate to create and initialize channel, install and instantiate chain code and perform invoke and query on your blockchain network.

Flow

  1. Generate the artifacts using cryptogen and configtx for peers and channel in network. Currently these are already generated and provided in the code repository to use as-is.
  2. Build the network using docker-compose and the generated artifacts.
  3. Use Hyperledger Fabric Java SDK APIs to work with and manage the network.
    • Create and initialize the channel
    • Install and instantiate the chaincode
    • Perform invoke and query to test the network

Included components

  • Hyperledger Fabric: Hyperledger Fabric is a platform for distributed ledger solutions underpinned by a modular architecture delivering high degrees of confidentiality, resiliency, flexibility and scalability.

  • Docker: Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications.

  • Hyperledger Fabric Java SDK

Featured technologies

  • Blockchain: A blockchain is a digitized, decentralized, public ledger of all transactions in a network.

  • Java: Java is a general-purpose computer-programming language that is concurrent, class-based and object-oriented.

Blog

Title - Create and Deploy a Blockchain Network using Hyperledger Fabric SDK Java

Blockchain technologies present opportunities for disruptive innovation. It enables business transactions with transparency and more trust. Blockchain is a shared, immutable ledger for recording the history of transactions. Hyperledger is an open-source collaborative effort created to advance cross-industry blockchain technologies. It is a global collaboration, hosted by The Linux Foundation. Hyperledger Fabric, one of the Hyperledger projects, is a blockchain framework implementation. It is designed to support pluggable implementations of different components and accommodate the complexity.

Organizations can leverage blockchain to augment existing business models, processes and systems, to drive greater efficiency and improve trust in existing business networks. So, how do organizations get started on this blockchain journey? More specifically, how to start writing blockchain applications. Our new code pattern ‘Create and deploy your Hyperledger Fabric Java SDK’ will help to get the process started.

In a Blockchain solution, blockchain network works as a back-end, and an application front-end uses a SDK to communicate with the network. To set up the communication between front-end and back-end, Hyperledger Fabric provides a number of SDKs for a variety of programming languages like NodeJS, Java, Python. This code pattern will focus on Hyperledger Fabric SDK Java APIs. The Hyperledger Fabric Java SDK helps facilitate Java applications to manage the lifecycle of Hyperledger channels and user chaincode. The SDK also provides a means to execute user chaincode, query blocks and transactions on the channel, and monitor events on the channel. This code pattern demonstrates how to create, deploy and test the network using Hyperledger Fabric SDK Java.

The code pattern ‘Create and Deploy your blockchain network using Hyperledger Fabric Java SDK’ will start with building the hyperledger fabric 1.1 network using docker-compose. It will help you to create and initialise channel, install and instantiate chain code and perform invoke and query on your blockchain network using Fabric Java SDK 1.0 APIs.

The world of Blockchain technology is a very exciting one. So start exploring blockchain!

Links