2.2. Review What's New and Different in JBoss Enterprise Application Platform 6

Introduction

The following is a list of notable differences in JBoss Enterprise Application Platform 6 from the previous release.

Module based class loading
In JBoss Enterprise Application Platform 5, the class loading architecture was hierarchical. In JBoss Enterprise Application Platform 6, class loading is based on JBoss Modules. This offers true application isolation, hides server implementation classes, and only loads the classes your application needs. Class loading is concurrent for better performance. Applications written for JBoss Enterprise Application Platform 5 must be modified to specify module dependencies and in some cases, repackage archives. For more information, see Overview of Class Loading and Modules in the Class Loading and Modules chapter of the Development Guide for JBoss Enterprise Application Platform 6.
Domain Management
In JBoss Enterprise Application Platform 6, the server can be run as a standalone server or in a managed domain. In a managed domain, you can configure entire groups of servers at once, keeping configurations synchronized across your entire network of servers. While this should not impact applications built for previous releases, this can simplify management of deployments to multiple servers. For more information, see About Managed Domains in the Get Started Developing Applications chapter of the Development Guide for JBoss Enterprise Application Platform 6.

Note

Domain mode is not supported in the following JBoss Enterprise products:
  • JBoss Portal Platform 6
Deployment Configuration
Standalone Servers and Managed Domains
JBoss Enterprise Application Platform 5 used profile based deployment configuration. These profiles were located in the EAP_HOME/server/ directory. Applications often contained multiple configuration files for security, database, resource adapter, and other configurations. In JBoss Enterprise Application Platform 6, deployment configuration is done using one file. This file is used to configure all the services and subsystems used for the deployment. A standalone server is configured using the EAP_HOME/standalone/configuration/standalone.xml file. For servers running in a managed domain, the server is configured using the EAP_HOME/domain/configuration/domain.xml file. The information contained in the multiple JBoss Enterprise Application Platform 5 configuration files must be migrated to the new single configuration file.
Ordering of deployments
JBoss Enterprise Application Platform 6 uses fast, concurrent initialization for deployment resulting in improved performance and efficiency. In most cases, the application server is able to automatically determine dependencies in advance and choose the most efficient deployment strategy. However, JBoss Enterprise Application Platform 5 applications that consist of multiple modules deployed as EARs and use legacy JNDI lookups instead of CDI injection or resource-ref entries may require configuration changes.
Directory Structure and Scripts
As previously mentioned, JBoss Enterprise Application Platform 6 no longer uses profile based deployment configuration, so there is no EAP_HOME/server/ directory. Configuration files for standalone servers are now located in the EAP_HOME/standalone/configuration/ directory and deployments are located in the EAP_HOME/standalone/deployments/ directory. For servers running in a managed domain, configuration files can be found in the EAP_HOME/domain/configuration/ directory and deployments can be found in the EAP_HOME/domain/deployments/ directory.
In JBoss Enterprise Application Platform 5, the Linux script EAP_HOME/bin/run.sh or Windows script EAP_HOME/bin/run.bat was used to start the server. In JBoss Enterprise Application Platform 6, the server start script is dependent on how you run your server. The Linux script EAP_HOME/bin/standalone.sh or Windows script EAP_HOME/bin/standalone.bat is used to start a standalone server. The Linux script EAP_HOME/bin/domain.sh or Windows script EAP_HOME/bin/domain.bat is used to start a managed domain.
JNDI Lookups
JBoss Enterprise Application Platform 6 now uses standardized portable JNDI namespaces. Applications written for JBoss Enterprise Application Platform 5 that use JNDI lookups must be changed to follow the new standardized JNDI namespace convention. For more information about JNDI naming syntax, see Section 3.1.8.2, “Portable JNDI Naming Syntax”.
For additional information, see New and Changed Features in JBoss Enterprise Application Platform 6 in the Get Started Developing Applications chapter of the Development Guide for JBoss Enterprise Application Platform 6.