Chapter 1. Overview of General Concepts
Before understanding how Red Hat JBoss Enterprise Application Platform can be configured and deployed, there are some important concepts to understand.
1.1. Java
Java is a programming language and a computing platform that incorporates concepts such as object-orientation, classes, and concurrency. Java applications are compiled down to bytecode and are run inside a Java Virtual Machine (JVM).
1.2. Application Servers
An application server, or app server, is software that provides an environment to run web applications. Most app servers also provide functionality to web applications running in their environment through a set of APIs. For example, an app server can provide an API for connecting to a database.
1.3. Java EE 7
Java EE (Java Platform, Enterprise Edition) is a standards-based enterprise platform that provides both an API and runtime environment for running and developing Java applications. The goal is to improve developer productivity by providing rich enterprise capabilities in easy to consume frameworks that eliminate boilerplate and reduce technical burden. The frameworks that compose Java EE are heavily tested in combination. Java EE 7, based on JSR 342, is a follow up to Java EE 6, with the primary focus being additional simplification of APIs to access container services while increasing support for emerging web technologies, such as HTML5.
Java EE 7 includes support for profiles, or subsets, of APIs. The Java EE 7 specification defines the full platform and the Web Profile.
Java EE 7 Web Profile
The Java EE 7 Web Profile is designed for web application development and supports a subset of the APIs defined by Java EE 7 related web-based technologies.
Java EE 7 Full Platform
The Java EE 7 full platform contains all of the APIs defined by Java EE 7, including all the items in the Web Profile. When developing EJBs, messaging applications, and web services (in contrast to web applications), use the full platform.