Chapter 1: Getting started with WildFly This chapter sets the beginning of our journey through the Java Enterprise Edition 7 (Java EE 7 in short) onboard of the latest release of WildFly application server. Although we will be sailing the WildFly full-rigged ship across this book, with some basic administration and configuration skills you will be also able to leverage this knowledge on other Java EE 7 Enterprise containers. We have lots of miles to run so let’s see more in detail the content of this chapter: We will start with a quick introduction to Java EE 7 and its most significant news Then we will learn how to install WildFly application server In the latter part of this chapter, we will focus on the development tools, specifically the Eclipse and NetBeans IDEs and Maven framework. Java EE 7 at first glance The Java Enterprise Edition (Java EE) is a superset of Java Standard Edition (Java SE) that dictates the basic rules for writing code in Java. The content of Java EE has been reshaped through the years, but especially the focus of it has changed a lot since the beginning. The very first releases of Java EE (1.2, 1.3, 1.4) featured a robust and scalable implementation of industry requirements, yet programming an Enterprise application was not a task for the faint hearts. The EJB specification was the living example of it: lots of interfaces to extend, plenty of boilerplate code and some mandatory XML descriptors to include. To make things worse, the code was hard to test and it was necessary to arrange for a completely new software infrastructure for creating and maintaining functional tests. No surprise that, after broken promises, many programmers turned to new frameworks that started to gain popularity such as Hibernate and Spring. It was in 2006 that we had the first trend reversal, with the arrival of EJB 3.0 and the new POJO based programming standard. The ease of development era was just started; since then Java EE it is finally meeting the initial promises and attracting again developers. The current focus in the current edition of Java EE is on the integration between different technologies, using Context Dependency Injection as glue between them; at the same time, several brand new specifications have been released, including support in some key areas such as HTML5 development, Batch executions and JSON processing that formerly needed a third-party set of API to run on the application server container. Let’s see more in detail what the new specification is going to buy you, starting from the new (1.0) additions:
15
Embed
Chapter 1: Getting started with WildFly - Java EE Books...Chapter 1: Getting started with WildFly This chapter sets the beginning of our journey through the Java Enterprise Edition
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Chapter 1: Getting started with WildFly This chapter sets the beginning of our journey through the Java Enterprise Edition 7 (Java EE 7 in
short) onboard of the latest release of WildFly application server. Although we will be sailing the
WildFly full-rigged ship across this book, with some basic administration and configuration skills
you will be also able to leverage this knowledge on other Java EE 7 Enterprise containers. We have
lots of miles to run so let’s see more in detail the content of this chapter:
We will start with a quick introduction to Java EE 7 and its most significant news
Then we will learn how to install WildFly application server
In the latter part of this chapter, we will focus on the development tools, specifically the
Eclipse and NetBeans IDEs and Maven framework.
Java EE 7 at first glance
The Java Enterprise Edition (Java EE) is a superset of Java Standard Edition (Java SE) that dictates
the basic rules for writing code in Java. The content of Java EE has been reshaped through the years,
but especially the focus of it has changed a lot since the beginning. The very first releases of Java EE
(1.2, 1.3, 1.4) featured a robust and scalable implementation of industry requirements, yet
programming an Enterprise application was not a task for the faint hearts. The EJB specification
was the living example of it: lots of interfaces to extend, plenty of boilerplate code and some
mandatory XML descriptors to include. To make things worse, the code was hard to test and it was
necessary to arrange for a completely new software infrastructure for creating and maintaining
functional tests. No surprise that, after broken promises, many programmers turned to new
frameworks that started to gain popularity such as Hibernate and Spring. It was in 2006 that we
had the first trend reversal, with the arrival of EJB 3.0 and the new POJO based programming
standard. The ease of development era was just started; since then Java EE it is finally meeting the
initial promises and attracting again developers.
The current focus in the current edition of Java EE is on the integration between different
technologies, using Context Dependency Injection as glue between them; at the same time, several
brand new specifications have been released, including support in some key areas such as HTML5
development, Batch executions and JSON processing that formerly needed a third-party set of API
to run on the application server container.
Let’s see more in detail what the new specification is going to buy you, starting from the new (1.0)
additions:
Pag
e2
Java API for WebSocket (JSR 356): this specification defines an API for establishing socket
connections between a web browser and a server. In a nutshell, this API leverages a persistent
connection between the client and the server and both parties can start sending data at any time
over a single TCP connection. Both client and server can be POJOs elected as WebSockets endpoints
using annotations or programmatically.
Batch API for Java applications (JSR 352) outlines an XML based Job Specification Language (JSL)
used to define batch jobs along with a set of interfaces, abstract classes, and field annotations that
embrace the batch programming model and a batch runtime for running batch jobs.
Java API for JSON Processing (JSR 353) provides a portable APIs to parse, generate, transform, and
query JSON (JavaScript Object Notation) data. This API includes an object model API which creates
a tree-like structure that represents the JSON data in memory and a streaming API that provides a
way to parse and generate JSON in a streaming fashion.
Concurrency Utilities for Java EE (JSR 236) provides a standard API for enriching your Java EE
applications with concurrency capabilities without compromising the integrity of your container.
Here is a quick shot of the Java EE 7 API highlighting the new features that we have just
introduced:
The existing specifications have been updated too with different levels of depth. Following here are