JEE Core Concepts: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 5: Line 5:
=Changing Application Behavior without Changing Code=
=Changing Application Behavior without Changing Code=


The possibility to change an application's behavior without changing code is a core concern in JEE. The entire Chapter 5 in the [[JEE#jsr_316|JEE specifications]] is dedicated to it. The essential mechanism than makes this possible is the ''application component environment'', also known as ''enterprise naming context (ENC)'', and the fact that the application code ''uses named entries'' in ENC to refer to configuration values and external resources. The names of those elements do not change in the code, but during the deployment, those configuration values and external resource references are ''mapped'' to deployment environment specific actual values and actual resources.  
The possibility to change an application's behavior without changing code is a core concern in JEE. The entire Chapter 5 in the [[JEE#jsr_316|JEE specifications]] is dedicated to it.  


The key element here is the use of ''deployment descriptors'', that provide this mapping.
The essential mechanism than makes this possible is the ''application component environment'', also known as ''enterprise naming context (ENC)''. ENC is a JNDI naming context, accessible to and private for each application component.
 
The application code ''uses named entries'' in ENC to refer to configuration values and external resources. The names of those elements do not change in the code, and actual configuration values and external resource references are ''mapped'' to actual deployment environment specific actual values and resources during deployment.
 
The key element here is the use of ''deployment descriptors'', that act as a layer of indirection between code and the deployment environment, and provide the mappings mentioned above.

Revision as of 02:13, 7 April 2017

Internal

Changing Application Behavior without Changing Code

The possibility to change an application's behavior without changing code is a core concern in JEE. The entire Chapter 5 in the JEE specifications is dedicated to it.

The essential mechanism than makes this possible is the application component environment, also known as enterprise naming context (ENC). ENC is a JNDI naming context, accessible to and private for each application component.

The application code uses named entries in ENC to refer to configuration values and external resources. The names of those elements do not change in the code, and actual configuration values and external resource references are mapped to actual deployment environment specific actual values and resources during deployment.

The key element here is the use of deployment descriptors, that act as a layer of indirection between code and the deployment environment, and provide the mappings mentioned above.