Configuring FX Corporate

Configuration options for FX Corporate can be set using one of the two methods detailed below.

Editing configuration options externally

As of FX Corporate version 1.57.0, customers have the option to use an external file to override the AppConfig configuration options packaged within the FX Corporate WAR file. This provides you with the flexibility to enable features in some environments, but not in others. For example, you may want to test a new feature in a test environment before enabling it in production.

You can use this method to override configuration options that take boolean, integer, or string values. To override options that take a JavaScript object, see the Editing configuration options in the source files section below.

To override the configuration options this way, follow the steps below:

  1. Create a file in which to store the external configuration. For example, <tomcat_root>/conf/fxcorp/ExternalAppConfig.json.

  2. In the application context for FX Corporate, set the JNDI environment variable CONFIG_FILE to an absolute or relative path to the file you created above. For example, in Tomcat 9, add the following environment entry to the file <tomcat_root>/conf/Catalina/localhost/corporatetrader.xml:

    <Environment name="CONFIG_FILE"
      value="../../conf/fxcorp/ExternalAppConfig.json"
      type="java.lang.String" override="false" />

    For more information on setting JNDI environment entries for FX Corporate, see FX Corporate JNDI configuration.

  3. Set configuration options in the external configuration file as properties of a single JSON object literal. For example:

    {
      "APP_ID": "corporate"
    }

The JSON config file must export valid JSON and will accept any of the configuration options detailed in FX Corporate Configuration.

Editing configuration options in the source files

Caplin FX Corporate’s configuration options are stored in a JavaScript map exported by the CommonJS module: config/AppConfig.js. An extract from this file is shown below:

File: corporatetrader/src/config/AppConfig.js
const i18n = require("br/I18n");
// other imports

export default function AppConfig() {
  return {
    APP_ID: "corporate"

    // ...

  }
}

To customise the configuration, edit the values assigned to the keys of the map.

See also: