Configuration

This is a draft document - it can be changed at any time by anyone.

Overview

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

Design Goals

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).