JBoss 5 quickstart guide

This is a quick-start guide to introduce the release 5 of the application server. In this article we will cover the basics of the JBoss 5 Kernel, the server file system and the available configurations.

Please note: JBoss 5 is an archived server release that is no longer maintained or supported. Therefore, they are likely to contain bugs and security vulnerabilities. It is highly recommended that you upgrade to WildFly or JBoss EAP at your earliest convenience.

JBoss 5 introduce several changes in the application server infrastructure. As a matter of fact JBoss  5 kernel has been rewritten completely and is now based on the JBoss MicroContainer  project.

JBoss MicroContainer is a refactoring of the earlier JBoss JMX Kernel and delivers something the competitors tried to produce for a long time: a completely modular and scalable POJO-based foundation. Support for JMX in JBoss 5 remains strong and MBean services written against the old Microkernel are expected to work.

JBoss application server can be freely downloaded from the Community site:http://www.jboss.org/jbossas/downloads/
The installation of JBoss is simply a matter of extracting the compressed archive into a folder.

In order to start up JBoss correctly, you have to define the environment variable JAVA_HOME to the location where you have installed Java.

After you have installed JBoss, perform a simple startup test to validate that there are no problems with your Java VM/operating system combination. To test your installation, move to the bin directory of your JBOSS_HOME directory and issue the following command:

run.bat    # Windows users
$ run.sh   # Linux/Unix users

The JBoss 5.1 structure

Let’s have a look at the application server folders:

structure

Here’s a description about the single folders:

bin This directory contains the scripts necessary to start-up and shutdown the server. This folder also contains some scripts (like twiddle) there are a few utilities for web services and server management
client This directory contains the client libraries needed to run client applications
common This directory contains the lib folder which is the new repository for the common libraries used by all application server configurations.
docs This folder contains the xml schemas used by the various xml configuration files and useful JMS, JTA and Datasource configuration examples which can be used as templates
lib This is the repository for all JBoss bootstrap libraries. Here is the new Micro-container along with earlier JMX  kernel
server This directory is the home of all server configurations. Here you can find the built-in server configurations (minimal, default, standard, web and all). Each server configuration contains the following directories in the next table

Place in the folder common/lib the libraries which are shared between all your server configuration

JBoss 5.1 available server configurations

JBoss 5 ships with a set of pre-built server configurations. Most of the time you’ll need to use the “default” configuration for single node applications and “all” for clustered applications. Here’s anyway a description of each configuration:

The “default” configuration:

This is the basic JBoss configuration containing a default set of services. It has the most frequently used services required to deploy a JEE application. It does not include the JAXR service, the IIOP service, or any of the clustering services.

The “all” confuguration:

This configuration is a full JEE server profile with enterprise extensions such as Clustering and RMI/IIOP.

Inside each server configuration there’s one more level containing the single server configuration and deployed artifacts. Here’ s the next level:

The “standard” configuration:

The standard folder hosts the configuration that has been tested for Java EE 5.0 compliance. The major differences with the other server existing configurations is that call-by-value and deployment isolation are enabled by default, along with support for RMI-IIOP and jJUDDI. .

The “web” configuration

The “web” configuration is a new experimental lightweight configuration created around JBoss Web that will follow the developments of the Java EE 6 web profile. Besides being a servlet/jsp container (and this is the most relevant difference with a pure Ttomcat  Web Server), it provides support for JPA and JTA/JCA.

The “minimal” configuration

This is the has a minimal configuration€”the bare minimum services required to start JBoss. It starts the logging service, a JNDI server and a URL deployment scanner to find new deployments. This is what you would use if you want to use JBoss to start your own services without any other JEE technologies. This is just the bare server. There is no web container, no EJB or JMS support. This is not a JEE compatible configuration.

Inside each server configuration there’s one more level which contains the configuration folders, the deployment folder and others. Here’s a table which resumes the server structure:

conf This is the configuration directory of the single server configurations.
data The data directory is a location available for use by services that want to store content in the file system
deploy The default location for deployment of JBoss services
deployers Contains all the JBoss AS services that are used to recognize and deploy different application and archive types
lib This folder used to contain the common libraries of all applications. You can use this directory for storing configuration-specific libraries
log The default directory into which the bootstrap logging service places its logs
tmp The location to which deployments are copied for local use
work Used by JBoss Web Server (the web container that comes prepackaged with JBoss AS) to store compiled JSP files and other temporary data.
Found the article helpful? if so please follow us on Socials