Java EE 8 REST Clients, JSON and Mobile App

Learn about Reactive REST Clients in a Microservice, How to use the new JSON Binding API and Enterprise Functionality for Mobile App from video reports
27 September 2017   743

Java 8 EE was released recently. It's about time to get up to speed with important APIs. Learn about key Java EE 8 APIs and how to connect your mobile applications to a Java EE backend with three video reports. 

Reactive REST Clients in a Microservices Landscape with David Delabassee. When designing microservices exchanges, REST is clearly the most popular approach, i.e. the de-facto standard. JAX-RS API hides all the low-level details behind RESTful calls. Complexity really starts to arise when multiple remote services need to be consumed in highly efficient manner. During this technical session, you will learn in details different solutions and best practices to efficiently consume REST services. This includes: 

- Synchronous Vs. Asynchronous
- Jersey Reactive Client API
- Popular Reactive libraries (e.g. RxJava)
- JAX-RS 2.1 Client API

How to use the new JSON Binding API with Dmitry Kornilov. JSON support is an important part of Java EE. This session provides a deep dive into JSON-P and JSON-B APIs explains how they are connected and can be used together. You will learn about new JSON-P features such as JSON Patch, JSON Pointer, and JSON Merge Patch as well as JSON-B features such as default and customized mapping, adapters, and serializers.

Enterprise Functionality for Mobile Apps with Johan Vos. Today an increasing number of companies and organizations are facing demands from their users (customers, partners, employees, and end-users) to make their enterprise functionality available via mobile apps. While many concepts that are used on the web also apply to mobile apps, the users of those apps typically expect more than just a website. In this session, you will learn how you can reuse your existing investments in enterprise code and infrastructure, and easily add a mobile channel. You will learn how the Oracle Cloud provides a great platform for bridging the gap between your enterprise code and the mobile apps your users are asking for.

What is Web3j?

Small review of lightweight Java and Android library for integration with Ethereum clients
15 December 2017   984

What is webj3?

web3j is a lightweight, highly modular, reactive, type safe Java and Android library for working with Smart Contracts and integrating with clients (nodes) on the Ethereum network:

web3j architecture
Web3j Architecture

This allows you to work with the Ethereum blockchain, without the additional overhead of having to write your own integration code for the platform.

According to the developers, these are the features:

  • Complete implementation of Ethereum's JSON-RPC client API over HTTP and IPC
  • Ethereum wallet support
  • Auto-generation of Java smart contract wrappers to create, deploy, transact with and call smart contracts from native Java code (Solidity and Truffle definition formats supported)
  • Reactive-functional API for working with filters
  • Ethereum Name Service (ENS) support
  • Support for Parity's Personal, and Geth's Personal client APIs
  • Support for Infura, so you don't have to run an Ethereum client yourself
  • Comprehensive integration tests demonstrating a number of the above scenarios
  • Command line tools
  • Android compatible
  • Support for JP Morgan's Quorum via web3j-quorum

It has five runtime dependencies:

  • RxJava for its reactive-functional API
  • OKHttp for HTTP connections
  • Jackson Core for fast JSON serialisation/deserialisation
  • Bouncy Castle (Spongy Castle on Android) for crypto
  • Jnr-unixsocket for *nix IPC (not available on Android)

It also uses JavaPoet for generating smart contract wrappers.

Lear more at GitHub.