Book Image

Mastering Java EE Development with WildFly

By : Luca Stancapiano
Book Image

Mastering Java EE Development with WildFly

By: Luca Stancapiano

Overview of this book

Packed with rich assets and APIs, Wildfly 10 allows you to create state-of-the-art Java applications. This book will help you take your understanding of Java EE to the next level by creating distributed Java applications using Wildfly. The book begins by showing how to get started with a native installation of WildFly and it ends with a cloud installation. After setting up the development environment, you will implement and work with different WildFly features, such as implementing JavaServer Pages. You will also learn how you can use clustering so that your apps can handle a high volume of data traffic. You will also work with enterprise JavaBeans, solve issues related to failover, and implement Java Message Service integration. Moving ahead, you will be working with Java Naming and Directory Interface, Java Transaction API, and use ActiveMQ for message relay and message querying. This book will also show you how you can use your existing backend JavaScript code in your application. By the end of the book, you’ll have gained the knowledge to implement the latest Wildfly features in your Java applications.
Table of Contents (20 chapters)
5
Working with Distributed Transactions
16
WildFly in Cloud

Scopes in EJB

We will now start analyzing a simple EJB. Here we have a module that provides read and write operations for posts inside a forum. Here is the first sample:

@Stateless
public class MyPosts {
public List<Post> getLastPosts() {...}
public List<Post> getPostsByDay() {...}
public void addPost(String topicName, String message) {...}
}

@Stateless converts a simple class in a stateless session bean, the first EJB type that we are analyzing next.

Stateless means an EJB without state. Each operation done inside this service is missed when the call ends. Suppose this class wants to register the list of requested posts calling the getPostsByDay operation:

@Stateless
public class MyPosts {
private List<Post> lastRequestedPosts;

public List<Post> getPostsByDay() {
lastRequestedPosts = asList(new Post[]{new Post("first message&quot...