An Overview of JBOSS - Personal Notes

Reading : JBoss in Action - Manning
JBoss AS is a Java Enterprise Edition 5 (Java EE 5)–compliant application server

A Java application server standardizes the application development architecture.

defining several component models—standards that developers can use to
develop components
.

These components can be deployed into an application server
using a standard deployment model.

the server provides a set of services that are made available to the components.

The application component models include standards such as
Enterprise Java-Beans (EJBs),
Java Server Pages (JSP),
and servlets

Some examples of Java EE services
that are available to these components include remoting, security, transaction management,
persistence, messaging, resource pooling, concurrency control, naming and
directory services, and deployment.


An application server is a place to run your Java code.

Without an application server,
you’d write your application code and
start your application using a main method.

you’d need to start all the various services that you might need to access
(for example,
a database connection pool;
a transaction manager;
clustering services;
security services
).

You only have to provide
metadata—in the form of annotations or Extensible Markup Language (XML)—to
hook the services into your components; no code is typically necessary.


JBoss AS is the core product in Red Hat’s suite of Java middleware products that they
collectively call the JBoss Enterprise Middleware Suite (JEMS).JBoss Enterprise Middleware Suite (JEMS).

JBoss AS 5 now
ships with a library called the Eclipse JDT (from Eclipse IDE fame) that can compile
Java code at runtime;therefore, a JDK isn’t required to run JBoss AS 5.

if you don’t use an IDE, like Eclipse,
with its own compiler libraryyou may need a JDK installed
on your machine to develop Java applications


JBoss runs on top of a Java Virtual Machine (JVM), but some things are done better
with native operating system functionality
For example, web pages can generally be
served with better performance when using native libraries.

Running an application
as an operating-system service is also more easily accomplished with native support.

JBoss provides a supplementary library called JBoss Native that can
be downloaded and unzipped into your application server’s bin directory

JBoss Native from http://labs.jboss.com/jbossweb/downloads/.

To download the installer, go to http://labs.jboss.com/jemsinstaller/.

java –jar jems-installer-X.X.X.jar

JBoss AS 4 didn’t include the JBoss Web Server as a web container; it used Tomcat.
The difference is that the JBoss Web Server can be configured to use the JBoss Native
library for your OS to make the server run faster

A configuration is a set of services that runs in your server.






Red Hat doesn’t charge per license for JBoss AS,
setting up a JBoss AS cluster requires minimal configuration

JBoss AS has had support for Java SE 5.0 and EJB3 since 2005
They can view the bugtracking
database, read about designs for upcoming features, and look through the
developer forums to see what the lead developers of the different product modules
are discussing


Other open source
application servers include
WebSphere Community Edition (CE),
Geronimo, and
GlassFish

JBoss AS is built on a modular architecture that
allows you to run only the particular services that you need for your application environment.

you can remove services manually
(called slimming the server), but the installer can make it easier because you don’t
have to keep track of which services have dependencies on other services.





JBoss AS and all of its configuration files are contained entirely under a single directory structure.

As we’ll discuss in section 1.3.8, one of the best things to do is to version-control
the entire server structure(or at least the configuration directory).

the directory has one or more subdirectories.
Each subdirectory contains what is called a server configuration.
When you start JBoss AS, you start a particular server configuration

Each configuration contains a set of services and applications that are started when the server starts.

Other application servers have a fixed set of services that run when you start them.
you can configure your application server to be as big or as small
as you want it to be by adding or removing different services and applications from
your configuration.

At its core, JBoss AS is a microcontainer

A server configuration is a directory structure under the application server’s server directory that
contains code, libraries, and configuration files for a set of services and applications
that run when the server starts.


You want to pick a server configuration that’s closest to your needs and then add,
remove, and configure services as necessary


The binary distribution of JBoss AS comes with three configurations: default, minimal,
and all

default - Java EE5 server. does not include clustering services.
minimal - minimal set of services including microcontainer, some deployers and the JNDI service.
all - starts all services that ship with JBOSS AS including the clustering services.


Analytics