Enhancement
Critical
Major
Detail
Detail
Major
#25925
"Real" overlay as deployment configuration
The configFile property can be used to specify an XML configuration to be loaded as the last overloaded configuration when the application is started. Hereby one can inject a configuration fragment in a deployed application "from the outside", in order to adapt the configuration to the environment.
Using this variant it is not possible to easily change the database connection, because predefined configuration snippets like db-mysql.xml or similar cannot be loaded this way.
Improvement
Instead of referencing an XML file, it is better to reference a configuration directory that contains a metaConf.txt file. In this file either deploymentlocal configuration files in the same directory can be referenced, or configuration fragments supplied by the application can be loaded.
The environment variable configFile is too general, so there may be clashes with other environment variables. Instead tl_config should be used.
The property project.developer should be omitted. Instead, in the Eclipse settings, the environment variable tl_config can be assigned a developer-local configuration directory (which should also no longer be checked in).
Code migration
- The name of the environment variable configFile is now tl_config. **This especially needs a migration on installed systems.
- The option to specify the name of the configuration file using the <ContextName>.<ApplicationName>.configFile property has been dropped. Instead, the <ContextPath>_tl_config property must be used. For example, if the application runs on localhost:8080/myApp then the property myApp_tl_config must be used. If the application runs on root (e.g.localhost:8080/) ROOT_tl_config must be used. **This especially needs a migration on installed systems.
- The option to specify the name of the configuration file using the <ApplicationName>.configFile property has been dropped. Again, the <ContextPath>_tl_config property must be used. **This especially needs a migration on installed systems.
- The property project.developer has been dropped. If the developer needs a special configuration, this configuration file can be placed in a folder outside the WS and an entry -Dtl_config=<pathToConfig> can be added in the JRE arguments of Eclipse. If an even more specific file is needed for a particular project, this can also be specified here. For example, if Prime is accessible via the /pmt context path, a different file can be used for Prime with -Dpmt_tl_config=<pathToPrimeConfig>.
- Deleted configurations: r303502.
Test
TestMultiProperties#testAdditionalConfigFolder()