Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The application framework will require a configuration file. The current XML files used to configure localization, logging, security, persistencedata source, and services can be combined into a single file.
The configuration implementation will support a configuration files file that are located external to the application framework but somewhere on the class pathis located anywhere - by specifying the file location during application start-up.

Design Goals

  • Single framework configuration file - located anywhere on the class path.
  • Supports lazy-loading of the configuration filesfile.
  • Supports run-time reloading of the configuration filesfile (via JMX).
  • Thread-safe.

Basic Architecture

...

Apache Commons Configuration was considered as the implementation library, but the Java objects it creates are not thread-safe. Thread-safe objects are a requirement because OFBiz is multi-threaded. Therefore, configuration will be implemented using a custom library - and that library design will be based on lessons learned from the OFBiz project.

The configuration file managed by this package will provide the basic settings needed to bootstrap an application. Application-specific settings will be managed by another component, and those settings can be stored in a data source (database).