JBoss - A Division of Red Hat

JBoss 5.0.0.GA Release Notes

This is the final release of the JBoss 5.0 series for the Java EE™5 codebase that fully complies with the Java EE 5 conformance testing certification requirements. It brings us to the end of a 3+ year marathon of redesigning the most popular open-source application server over a completely new kernel architecture, the JBoss Microcontainer. It also marks the beginning of a new era of innovation for JBoss as we will be exploring the capabilities and limitations of the new architecture in the releases to come. In our view, JBossAS 5 provides a healthy foundation and the most advanced and fully extensible, cross component model, aspect integration, server runtime environment.

For information on the APIs that make up Java EE 5, see Java EE APIs & Docs. A tutorial on Java EE 5 can be found here. Please visit also the JBoss AS docs pages as we'll be updating the documents with the latest information, and post your questions to the JBossAS 5 User Forum.

A sample Java EE 5 application that can be run on top of JBoss 5 and demonstrates many interesting technologies is the Seam Booking Application available here. Check out the JBoss Seam framework pages that link to many interesting topics for combining Seam with JBossAS 5.

Overview

Highlights

JBoss 5 is the next generation of the JBoss Application Server build on top of the new JBoss Microcontainer. The JBoss Microcontainer is a lightweight container for managing POJOs, their deployment, configuration and lifecycle. It is a standalone project that replaces the famous JBoss JMX Microkernel of the 3.x and 4.x JBoss series. The Microcontainer integrates nicely with the JBoss framework for Aspect Oriented Programming, JBoss AOP. Support for JMX in JBoss 5 remains strong and MBean services written against the old Microkernel are expected to work.

JBoss5 is designed around the advanced concept of a Virtual Deployment Framework (VDF), that takes the aspect oriented design of many of the earlier JBoss containers and applies it to the deployment layer. Aspectized Deployers operate in a chain over a Virtual File System (VFS), analyze deployments and produce metadata to be used by the JBoss Microcontainer, which in turn instantiates and wires together the various pieces of a deployment, controlling their lifecycle and dependencies.

Many key features of JBoss 5 are provided by integrating other standalone JBoss projects:

JBoss 5 includes features and bug fixes, many of them carried over upstream from the 4.x codebase. See the Detailed Release Notes section for the full details.

A common theme for JBossAS 5 is the breaking out of internal subsystems into stand-alone projects and the introduction of SPIs throughout the server codebase. Those changes should not affect directly the end user but they are an important part of the JBoss strategy for making available the various EE services as independent projects, so that they can be wired-together and be consumed à la carte inside different runtime environments and not only  inside the JBoss Application Server.

If you are building JBossAS from source you'll notice we are migrating to a maven2 build. At this point the build is a hybrid one because it declares all JBoss dependencies as maven2 artifacts, however after the dependencies are resolved/imported the legacy ant based build is used to compile and build the distribution. This will change to a full maven build at some point in time. The jboss maven repo can be found here. Starting from AS5 CR2, please note how the -sources.jar are also downloaded.

Compatibility Issues

JBossAS 5.0.0.GA can be compiled with both Java5 & Java6. The Java5 compiled binary is our primary/recommended binary distribution. It has undergone rigorous testing and can run under both a Java 5 and a Java 6 runtime. When running under Java 6 you need to manually copy the following libraries from the JBOSS_HOME/client directory to the JBOSS_HOME/lib/endorsed directory, so that the JAX-WS 2.0 apis supported by JBossWS are used: The other option is to download the jdk6 distribution (jboss-5.0.0.GA-jdk6.zip) in which case no configuration changes are required. If you still have problems using JBoss with a Sun Java 6 runtime, you may want to set  -Dsun.lang.ClassLoader.allowArraySyntax=true, as described in JBAS-4491. Other potential problems under a Java 6 runtime include:
Other compatibility issues:

Configuration Issues

JBossAS 5.0.0.GA introduces two new configuration, the standard and the web config.

Another notable change is that the majority of the libraries common to the different configurations have moved to a new shared location, JBOSS_HOME/common/lib/. This is so we avoid having multiple copies of the same libraries in the distribution. The location of the common library directory can be controlled by the following properties:
The common library directory is shared by all the configurations except for the minimal config. It is referenced in the very beginning of every configuration's conf/jboss-service.xml.

<classpath codebase="${jboss.server.lib.url}" archives="*"/>
<classpath codebase="${jboss.common.lib.url}" archives="*"/>

You can see that the library directory of the individual configurations is still in place, although in some cases it's empty (e.g. JBOSS_HOME/server/default/lib/)

The directory structure of JBoss 5 resembles that of the 4.x series with some notable differences:

Various configuration issues: EJB3 configuration  is now controlled by deployers/ejb3.deployer/META-INF/ejb3-deployers-jboss-beans.xml. For more details check out this wiki page.

For security related configuration changes, please consult this wiki page.
For clustering related changes, check out the Wiki for more info.

Other Issues

Library Updates

For a full list of the JBoss and thirdparty libraries used with JBoss AS 5.0.0.GA check the pom.xml found in the component-matrix directory of the source code distribution. To see the maven dependency tree you can also do a 'mvn dependency:tree' from the thirdparty directory of the source code distro.

Some rather important used jboss project versions are listed below. You are encouraged to browse the individual project's documentation and view the release notes at www.jboss.org.

Detailed Release Notes

Includes versions: JBossAS-5.0.0.GA


Feature Request

Bug

Task

Sub-task

Thirdparty Change

Component Upgrade


Documentation and Help

The JBossAS community project is hosted on jboss.org . Documentation and help may be obtained from the following locations.

Licenses

JBoss Application Server  is licensed under the LGPL, as explained in the JBoss End User License Agreement. The license texts for JBoss and the thirdparty components it uses may be found in the docs/licenses directory of the distribution. Browse Licenses

About JBoss, a division of Red Hat

JBoss, a division of Red Hat, is in the business of providing superior technical support to our customers. Our goal is to make Professional Open Source™ the SAFE CHOICE for you. We accomplish this by backing up our open source Java products with technical support services that are delivered by the core developers themselves. We can help you to train your staff and provide you with support at every stage of the application lifecycle - from development and integration through deployment and maintenance. Visit the JBoss Services page for more information.