2.2. Review What's New and Different in JBoss EAP 6
The following is a list of notable differences in JBoss EAP 6 from the previous release.
- Module based class loading
- In JBoss EAP 5, the class loading architecture was hierarchical. In JBoss EAP 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 EAP 5 must be modified to specify module dependencies and in some cases, repackage archives. For more information, refer to Class Loading and Modules in the Development Guide for JBoss EAP 6 on https://access.redhat.com/site/documentation/JBoss_Enterprise_Application_Platform/.
- Domain Management
- In JBoss EAP 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, refer to About Managed Domains in the Administration and Configuration Guide for JBoss EAP 6 on https://access.redhat.com/site/documentation/JBoss_Enterprise_Application_Platform/.
- Deployment Configuration
- Standalone Servers and Managed Domains
- JBoss EAP 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 EAP 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.xmlfile. For servers running in a managed domain, the server is configured using the
EAP_HOME/domain/configuration/domain.xmlfile. The information contained in the multiple JBoss EAP 5 configuration files must be migrated to the new single configuration file.
- Ordering of deployments
- JBoss EAP 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 EAP 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 EAP 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.In JBoss EAP 5, the Linux script
EAP_HOME/bin/run.shor Windows script
EAP_HOME/bin/run.batwas used to start the server. In JBoss EAP 6, the server start script is dependent on how you run your server. The Linux script
EAP_HOME/bin/standalone.shor Windows script
EAP_HOME/bin/standalone.batis used to start a standalone server. The Linux script
EAP_HOME/bin/domain.shor Windows script
EAP_HOME/bin/domain.batis used to start a managed domain.
- JNDI Lookups
- JBoss EAP 6 now uses standardized portable JNDI namespaces. Applications written for JBoss EAP 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 184.108.40.206, “Portable EJB JNDI Names”.