The JBoss Enterprise Application Platform (or JBoss EAP) is a
subscription-based/
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
Java EE
Jakarta EE, formerly Java Platform, Enterprise Edition (Java EE) and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web se ...
-based
application server runtime platform used for building, deploying, and hosting highly-transactional Java applications and services developed and maintained by Red Hat.
The JBoss Enterprise Application Platform is part of Red Hat's Enterprise Middleware portfolio of software.
Because it is
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
-based, the JBoss application server operates across platforms; it is usable on any operating system that supports
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
. JBoss Enterprise Application Platform was originally called JBoss and was developed by the eponymous company
JBoss
WildFly, formerly known as JBoss AS, or simply JBoss, is an application server written by JBoss, now developed by Red Hat. WildFly is written in Java and implements the Java Platform, Enterprise Edition (Java EE) specification. It runs on mu ...
, acquired by
Red Hat in 2006
Product components and features
Red Hat's latest JBoss EAP version is 7, with Cumulative Patches 2 and Cumulative Patches 3 (JBoss EAP 7.2 and JBoss EAP 7.3, respectively).
Key features:
*
Eclipse
An eclipse is an astronomical event that occurs when an astronomical object or spacecraft is temporarily obscured, by passing into the shadow of another body or by having another body pass between it and the viewer. This alignment of three ce ...
-based
Integrated Development Environment
An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools a ...
(IDE) is available using
JBoss Developer Studio
JBoss Developer Studio (JBDS) is a development environment created and currently developed by JBoss (a division of Red Hat) and Exadel.
It integrates and certifies both tooling and runtime components by combining Eclipse, Eclipse Tooling, and th ...
* Supports Java EE and Web Services standards
*
Enterprise Java Beans (EJB)
*
Java persistence using
Hibernate
Hibernation is a state of minimal activity and metabolic depression undergone by some animal species. Hibernation is a seasonal heterothermy characterized by low body-temperature, slow breathing and heart-rate, and low metabolic rate. It most ...
*
Object request broker (ORB) using
JacORB for interoperability with
CORBA
The Common Object Request Broker Architecture (CORBA) is a standard defined by the Object Management Group (OMG) designed to facilitate the communication of systems that are deployed on diverse platforms. CORBA enables collaboration between sy ...
objects
*
JBoss Seam framework, including
Java annotations to enhance
POJOs, and including
JBoss jBPM
*
JavaServer Faces
Jakarta Faces, formerly Jakarta Server Faces and JavaServer Faces (JSF) is a Java specification for building component-based user interfaces for web applications and was formalized as a standard through the Java Community Process being part o ...
(JSF), including
RichFaces
RichFaces is an open source Ajax-enabled component library for JavaServer Faces, hosted by JBoss. It allows easy integration of Ajax capabilities into enterprise application development. It reached its end-of-life in June 2016.
RichFaces is ...
* Web application services, including
Apache Tomcat
Apache Tomcat (called "Tomcat" for short) is a free and open-source implementation of the Jakarta Servlet, Jakarta Expression Language, and WebSocket technologies. It provides a "pure Java" HTTP web server environment in which Java code can also ...
for
JavaServer Pages
Jakarta Server Pages (JSP; formerly JavaServer Pages) is a collection of technologies that helps software developers create dynamically generated web pages based on HTML, XML, SOAP, or other document types. Released in 1999 by Sun Microsystems, J ...
(JSP) and
Java Servlet
A Jakarta Servlet (formerly Java Servlet) is a Java software component that extends the capabilities of a server. Although servlets can respond to many types of requests, they most commonly implement web containers for hosting web applicatio ...
s
*
Caching
In computing, a cache ( ) is a hardware or software component that stores data so that future requests for that data can be served faster; the data stored in a cache might be the result of an earlier computation or a copy of data stored elsewher ...
,
clustering, and
high availability
High availability (HA) is a characteristic of a system which aims to ensure an agreed level of operational performance, usually uptime, for a higher than normal period.
Modernization has resulted in an increased reliance on these systems. F ...
, are provided by the subsystem Infinispan (formerly JBoss Cache)
*
EJB
Jakarta Enterprise Beans (EJB; formerly Enterprise JavaBeans) is one of several Java APIs for modular construction of enterprise software. EJB is a server-side software component that encapsulates business logic of an application. An EJB web co ...
that includes
JNDI
The Java Naming and Directory Interface (JNDI) is a Java API for a directory service that allows Java software clients to discover and look up data and resources (in the form of Java objects) via a name. Like all Java APIs that interface with hos ...
and
RMI
RMI may refer to:
Science and technology
* Radio-magnetic indicator, an instrument used in aircraft navigation
* Repetitive motion injury, an injury to the musculoskeletal and nervous systems
* Richtmyer–Meshkov instability, an instability occu ...
* Security services, including
Java Authentication and Authorization Service
Java Authentication and Authorization Service, or JAAS, pronounced "Jazz", is the Java implementation of the standard Pluggable Authentication Module (PAM) information security framework.
JAAS was introduced as an extension library to the Java Pl ...
(JAAS) and
pluggable authentication modules (PAM)
* Web Services and interoperability,
including
JAX-RPC,
JAX-WS, many
WS-* standards, and
MTOM/XOP
* Integration and messaging services, including
J2EE Connector Architecture
Jakarta Connectors (JCA; formerly Java EE Connector Architecture and J2EE Connector Architecture) is a Java programming language tool for connecting application servers and enterprise information systems (EIS) as part of enterprise application in ...
(JCA),
Java Database Connectivity
Java Database Connectivity (JDBC) is an application programming interface (API) for the programming language Java, which defines how a client may access a database. It is a Java-based data access technology used for Java database connectivity. ...
(JDBC), and
Java Message Service
The Jakarta Messaging API (formerly Java Message Service or JMS API) is a Java application programming interface (API) for message-oriented middleware. It provides generic messaging models, able to handle the producer–consumer problem, that can ...
(JMS)
* Management and
Service-Oriented Architecture
In software engineering, service-oriented architecture (SOA) is an architectural style that focuses on discrete services instead of a monolithic design. By consequence, it is also applied in the field of software design where services are provided ...
(SOA) using
Java Management Extensions
Java Management Extensions (JMX) is a Java technology that supplies tools for managing and monitoring applications, system objects, devices (such as printers) and service-oriented networks. Those resources are represented by objects called MBeans ...
(JMX)
* Additional administration and monitoring features are available using
JBoss Operations Network
Key components:
*
JBoss Application Server, the framework used to support the development and implementation of applications
*
Hibernate
Hibernation is a state of minimal activity and metabolic depression undergone by some animal species. Hibernation is a seasonal heterothermy characterized by low body-temperature, slow breathing and heart-rate, and low metabolic rate. It most ...
, an object/relational mapping and persistence (ORM) framework
*
JBoss Seam, a framework for building web applications
*
JBoss Web Framework Kit, for building Java applications
Lists of components, features,
and standards supported
are available.
Licensing and pricing
JBoss itself is free and open-source, but Red Hat charges to provide a support subscription for JBoss Enterprise Middleware. Red Hat allows the use of JBoss EAP for development, but to obtain support in production a support subscription is required and customizations are not supported.
Related products
These products are part of the JBoss Enterprise Middleware portfolio of software,
or are included with the JBoss Enterprise Application Platform software.
* JBoss Enterprise Web Platform (or JBoss EWP)
This software is a lighter weight version of the JBoss Enterprise Application Platform. The key components are essentially the same as the full JBoss Enterprise Application Platform, but uses a slimmed down profile of the
JBoss Application Server.
Lists of components and standards supported are available.
* JBoss Enterprise Portal Platform (or JBoss EPP)
This software is an
enterprise portal
An enterprise portal, also known as an enterprise information portal (EIP), is a framework for integrating information, people and processes across organizational boundaries in a manner similar to the more general web portals. Enterprise portals p ...
with the core portal features of presentation, master page objects, containers, and a repository, and also an optional site publisher.
Key components:
** JBoss Enterprise Application Platform – the software infrastructure
** GateIn Portal – both an enterprise
web portal
A web portal is a specially designed website that brings information from diverse sources, like emails, online forums and search engines, together in a uniform way. Usually, each information source gets its dedicated area on the page for displa ...
and also a portal framework to build upon. GateIn Portal includes support for
Web Services for Remote Portlets (WSRP),
Java Content Repository (JCR),
Single Sign-On
Single sign-on (SSO) is an authentication scheme that allows a user to log in with a single ID to any of several related, yet independent, software systems.
True single sign-on allows the user to log in once and access services without re-enterin ...
(SSO), and
OpenSocial
OpenSocial is a public specification that defines a component hosting environment (container) and a set of common application programming interfaces (APIs) for web applications. Initially, it was designed for social network applications and ...
gadgets.
** JBoss Portlet Bridge – a non-final draft implementation of the JSR-301 and JSR-329 specifications that support
JavaServer Faces
Jakarta Faces, formerly Jakarta Server Faces and JavaServer Faces (JSF) is a Java specification for building component-based user interfaces for web applications and was formalized as a standard through the Java Community Process being part o ...
(JSF) within a
JSR-286 portlet. This software also supports other web frameworks such as
JBoss Seam and
RichFaces
RichFaces is an open source Ajax-enabled component library for JavaServer Faces, hosted by JBoss. It allows easy integration of Ajax capabilities into enterprise application development. It reached its end-of-life in June 2016.
RichFaces is ...
to run inside a portlet.
** Site Publisher – web content management (optional) (by eXo)
:JBoss EPP implements the standards for
Portlet 2.0 (JSR-286),
JCR (JSR-170), OASIS
WSRP
WSRP (910 AM) is a radio station broadcasting a Regional Mexican
Regional Mexican is a Latin music radio format encompassing the musical genres from the different parts of rural Mexico and the Southwestern United States. Genres include b ...
1.0, and
OpenSocial
OpenSocial is a public specification that defines a component hosting environment (container) and a set of common application programming interfaces (APIs) for web applications. Initially, it was designed for social network applications and ...
.
:A list of components is available.
:The GateIn project is a merge of JBoss Portal 2.7 and eXo Portal 2.5 that produced GateIn Portal 3.0, and also the related projects GateIn Portlet Container, eXo JCR, and JBoss Portlet Bridge.
* JBoss Enterprise Web Server (or JBoss EWS)
This software is a platform for lightweight Java applications, but also handles large scale websites. JBoss EWS may be deployed as a standard enterprise web server, a simple Java application server, or an enterprise open source application infrastructure.
Key components:
**
Apache Tomcat
Apache Tomcat (called "Tomcat" for short) is a free and open-source implementation of the Jakarta Servlet, Jakarta Expression Language, and WebSocket technologies. It provides a "pure Java" HTTP web server environment in which Java code can also ...
– including
Java Servlet
A Jakarta Servlet (formerly Java Servlet) is a Java software component that extends the capabilities of a server. Although servlets can respond to many types of requests, they most commonly implement web containers for hosting web applicatio ...
and
JavaServer Pages
Jakarta Server Pages (JSP; formerly JavaServer Pages) is a collection of technologies that helps software developers create dynamically generated web pages based on HTML, XML, SOAP, or other document types. Released in 1999 by Sun Microsystems, J ...
**
Apache Web Server
The Apache HTTP Server ( ) is a free and open-source cross-platform web server software, released under the terms of Apache License 2.0. Apache is developed and maintained by an open community of developers under the auspices of the Apache Soft ...
– including common modules and connectors for
authentication
Authentication (from ''authentikos'', "real, genuine", from αὐθέντης ''authentes'', "author") is the act of proving an assertion, such as the identity of a computer system user. In contrast with identification, the act of indicat ...
,
caching
In computing, a cache ( ) is a hardware or software component that stores data so that future requests for that data can be served faster; the data stored in a cache might be the result of an earlier computation or a copy of data stored elsewher ...
,
proxying,
filtering
Filter, filtering or filters may refer to:
Science and technology
Computing
* Filter (higher-order function), in functional programming
* Filter (software), a computer program to process a data stream
* Filter (video), a software component th ...
, and
load balancing (
mod_jk)
:Lists of components and standards supported are available.
* JBoss Web Framework Kit
This software is a set of web frameworks used for building light and rich Java applications.
Components:
**
Google Web Toolkit
Google Web Toolkit (GWT ), or GWT Web Toolkit, is an open-source set of tools that allows web developers to create and maintain JavaScript front-end applications in Java. It is licensed under the Apache License 2.0.
GWT emphasizes reusable ...
– framework for
rich Internet applications
**
RichFaces
RichFaces is an open source Ajax-enabled component library for JavaServer Faces, hosted by JBoss. It allows easy integration of Ajax capabilities into enterprise application development. It reached its end-of-life in June 2016.
RichFaces is ...
– framework for
rich Internet applications
**
Spring Framework
The Spring Framework is an application framework and inversion of control container for the Java platform. The framework's core features can be used by any Java application, but there are extensions for building web applications on top of the J ...
– Java framework
**
Apache Struts – Java framework
* JBoss Cache (or JBC)
This software implements a
cache for frequently accessed Java objects to improve application performance. The cache can be replicated and transactional. The cache can be replicated across one or more
Java Virtual Machine
A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally describ ...
s (JVM) across a network. The cache can be transactional because a
JTA compliant transaction manager can be configured and make any cache interaction transactional. The two types of JBoss Cache are Core and
POJO, with the POJO library built on top the Core library.
*
JBoss NettyThis software is a
New I/O (NIO) client-server
framework for the development of Java network applications such as protocol servers and clients. The asynchronous
event-driven network application framework and tools is used to simplify
network programming such as
TCP
TCP may refer to:
Science and technology
* Transformer coupled plasma
* Tool Center Point, see Robot end effector
Computing
* Transmission Control Protocol, a fundamental Internet standard
* Telephony control protocol, a Bluetooth communication s ...
and
UDP socket servers.
Netty includes an implementation of the
reactor pattern
The reactor design pattern is an event handling pattern for handling service requests delivered concurrently to a service handler by one or more inputs. The service handler then demultiplexes the incoming requests and dispatches them synchrono ...
of programming.
See also
*
WildFly, the JBoss EAP upstream project
*
List of JBoss software
*
Comparison of business integration software
*
Comparison of application servers
References
Bibliography
*
*
{{refend
External links
Red Hat JBoss Enterprise Application Platform
Portal software
Java enterprise platform
Red Hat software
Cross-platform software