Java Ethereum
Java is one of the worlds most popular programming languages used in global-scale applications by developers everywhere. This community brings together developers and projects at the forefront of bringing Ethereum support to this rich language ecosystem.
ethereum
java
web3j
pantheon

10

Articles

0

Collections
Moderators
Getting Started

Take your first steps integrating Java with Ethereum

Connecting to an Ethereum client with Java, Eclipse and Web3j

Other articles in this series: - Manage an Ethereum account with Java and Web3j - Generate a Java Wrapper from your Smart Contract - Interacting with an Ethereum Smart Contract in Java - Listening for Ethereum Smart Contract Events in Java - Using Pantheon, the Java Ethereum Client with Linux Ethereum is a Blockchain, which means it operates on a peer-to-peer network composed of thousand of nodes where each node agrees on the next state. In order to interact with the Ethereum global state (distr

Java Ethereum
Grégoire Jeanmart

6 min read

19 Jul 19

Manage an Ethereum account with Java and Web3j

Other articles in this series: - Connecting to an Ethereum client with Java, Eclipse and Web3j - Generate a Java Wrapper from your Smart Contract - Interacting with an Ethereum Smart Contract in Java - Listening for Ethereum Smart Contract Events in Java - Using Pantheon, the Java Ethereum Client with Linux The Ethereum blockchain is often compared to a World Computer with a global state. The global state grows after each new block and cosists of many accounts organised in a Merkle tree. Each ac

Java Ethereum
Grégoire Jeanmart

13 min read

06 Nov 19

Generate a Java Wrapper from your Smart Contract

Other articles in this series: - Connecting to an Ethereum client with Java, Eclipse and Web3j - Manage an Ethereum account with Java and Web3j - Interacting with an Ethereum Smart Contract in Java - Listening for Ethereum Smart Contract Events in Java - Using Pantheon, the Java Ethereum Client with Linux In this article, we discover how to generate a Java Wrapper Class directly from a smart contract to interact with a smart contract in Java. There are different methods to generate a Java Wrappe

Java Ethereum
Grégoire Jeanmart

16 min read

19 Jul 19

Interacting with an Ethereum Smart Contract in Java

Other articles in this series: - Connecting to an Ethereum client with Java, Eclipse and Web3j - Manage an Ethereum account with Java and Web3j - Generate a Java Wrapper from your Smart Contract - Listening for Ethereum Smart Contract Events in Java - Using Pantheon, the Java Ethereum Client with Linux In this tutorial, you will learn how to deploy a smart contract using the Web3j java library, along with how to interact with the functions of the smart contract. As a prerequisite, you should be

Java Ethereum
Craig Williams

13 min read

19 Jul 19

Listening for Ethereum Smart Contract Events in Java

Other articles in this series: - Connecting to an Ethereum client with Java, Eclipse and Web3j - Manage an Ethereum account with Java and Web3j - Generate a Java Wrapper from your Smart Contract - Interacting with an Ethereum Smart Contract in Java - Using Pantheon, the Java Ethereum Client with Linux What is a Smart Contract Event You can emit an event from any smart contract function triggered by a transaction, and they are an important piece of the Ethereum application architecture puzzle. Th

Java Ethereum
Craig Williams

7 min read

22 Jul 19

Using Besu, the Java Ethereum Client with Linux/MacOS

Toolbelt: Besu included! Original photo by Jesse Orrico Update: Pantheon is now Hyperledger Besu. For more information, see here. This is the Linux/MacOS version of an article on installing Besu, the Java client for Ethereum: Linux Windows Having some powerful tools in your toolbelt is essential for a Java developer, and one of the crucial tools for an Ethereum blockchain developer is the network client. This is the piece of software that communicates data to and from the blockchain. Among other

Java Ethereum
Felipe Faraggi

6 min read

22 Nov 19

Running a Pantheon Node in Java Integration Tests

The first problem you are likely to meet when attempting to write integration tests for your Java Ethereum application is that you need a running node to connect to for sending transactions. One option to overcome this is to run a node yourself manually in the background, but this becomes hard to manage if you want to run your tests in a CI pipeline, and forcing all contributors to you codebase to run a node manually is not ideal. Luckily theres a better way! Prerequisites A running Docker daemo

Java Ethereum
Craig Williams

5 min read

13 Aug 19

Intermediate

Want to deep dive!

Managing storage in a Java application with IPFS

In this article, we learn how to interact with IPFS (InterPlanetary File System) in Java using the official java-ipfs-http-client library. This library connects to an IPFS node and wraps most of the operations offered by the HTTP API. The following diagram describes a Java program connected to an IPFS node via the java-ipfs-http-client library to the API Server. API server (default port: 5001): Full API Gateway server (default port: 8080): Read Only API (access to data only) P2P (default port: 4

Java Ethereum
Grégoire Jeanmart

12 min read

14 Aug 19

Manage ERC20 tokens in Java with Web3j

In this article, we learn how to manage ERC20 (Fungible) tokens in Java with the Web3j library. ERC20 is an Ethereum Smart Contract standard for implementing tokens in a compliant way, so it is easy to interact and integrate tokens with any application (dapps, wallets, exchanges, etc.). For more details about ERC20, see the article ERC-20 Token Standard. Prerequisites To follow this tutorial, you need the following software installed on your computer: Java programming language (> 8) A package an

Java Ethereum
Grégoire Jeanmart

7 min read

20 Aug 19

Web3j Transaction Managers

A Transaction Manager in Web3j is an abstraction that controls how transactions are signed and broadcast to the Ethereum network, via a connected client. You can pass an implementation to a smart contract wrapper when deploying or loading a contract, or you can use it to directly send transactions in a more manual way. There are multiple different Transaction Manager implementations included, all extending the TransactionManager abstract class. Each extending class must implement the abstract se

Java Ethereum
Craig Williams

5 min read

09 Sep 19

Advanced

Section coming soon...