Book Image

Hands-On Cloud Development with WildFly

By : Tomasz Adamski
Book Image

Hands-On Cloud Development with WildFly

By: Tomasz Adamski

Overview of this book

The book starts by introducing you to WildFly Swarm—a tool that allows you to create runnable microservices from Java EE components. You’ll learn the basics of Swarm operation—creating microservices containing only the parts of enterprise runtime needed in a specific case. Later, you’ll learn how to configure and test those services. In order to deploy our services in the cloud, we’ll use OpenShift. You’ll get to know basic information on its architecture, features, and relationship to Docker and Kubernetes. Later, you’ll learn how to deploy and configure your services to run in the OpenShift cloud. In the last part of the book, you’ll see how to make your application production-ready. You’ll find out how to configure continuous integration for your services using Jenkins, make your application resistant to network failures using Hystrix, and how to secure them using Keycloak. By the end of the book, you’ll have a functional example application and will have practical knowledge of Java EE cloud development that can be used as a reference in your other projects.
Table of Contents (14 chapters)


In the preceding example, we did the following: we annotated our classes with JAX-RS annotations, built the code using Swarm Maven plugin, and obtained a runnable Swarm-based JAR. The resulting JAR is much smaller than a full application server. The reason for that is that Swarm has wrapped our code in only those parts of WildFly that it needs to work. Now, we will look in greater detail at this statement.

Let's run the application created in the preceding chapter again:

mvn wildfly-swarm:run

Let's look at the beginning of the console output:

Take a look at the lines of the log in the red rectangle. Swarm is informing us that it has installed four fractions: JAX-RS, Undertow, Elytron, and Logging. However, what does it mean by that and what actually is a fraction?

The fraction is a part of the functionality needed by an application. To be more precise, fraction...