Web Application Configuration

Configurable Initialization Parameters

There are two initialization parameters that can be added to the web.xml file to customize your environment. The parameters currently exist in the file, but they are commented out, so default values are assumed for both parameters.

  • encryption.key - The value of this parameter is used as the seed to encrypt configuration file values so they are not stored in plain text on the file system.
  • logs.directory - The value of this parameter indicates where application log files will be written on the file system. This must contain the full path to an existing directory on the file system. The default location is the /logs directory within the deployed web application.

Modifying a web parameter

In order to change the default value of one of the web initialization parameters, you must edit the the web.xml file located in the deployed web application's WEB-INF directory.

The modifiable properties are located in the AdminConsole servlet element (denoted in blue below). Simply remove the HTML block comments around the element to enable the parameter.

Below is the configuration from the default web.xml file:

<servlet>
    <servlet-name>AdminConsole</servlet-name>
    <servlet-class>com.kineticdata.calendar.servlets.AdminConsoleServlet</servlet-class>
    <!--
    ***** encryption.key ***************************************************************
    * Uncomment to change the default encryption key to be different than all the
    * other default Kinetic Calendar web installations
    *
    * The encryption.key must be at least 8 characters
    ************************************************************************************
    -->
    <!--
    <init-param>
        <description>The encryption key to use for configuration file encryption/decryption</description>
        <param-name>encryption.key</param-name>
        <param-value>0n7xQ4x1sObZ9sYO6wf98cDt8b9nBg79></param-value>
    </init-param>
    -->
    <!--
    ***** logs.directory ***************************************************************
    * Uncomment to change the default log directory from the /logs directory in the
    * deployed web application, to a specified location.
    *
    * NOTE - The specified logs directory must exist on the file system, it will not be
    *        created automatically by the application.
    ************************************************************************************
    -->
    <!--
    <init-param>
        <description>The directory to write log files to</description>
        <param-name>logs.directory</param-name>
        <param-value>E:\logs\kineticCalendar\</param-value>
    </init-param>
    -->
    <load-on-startup>1</load-on-startup>
</servlet>

To change the default location of the log directory, remove the comments around the logs.directory init parameter and change the param-value to the desired location.

📘

NOTE

If either of the initialization parameters are changed, the web application will need to be restarted.

IMPORTANT: The encryption key is used to encrypt and decrypt the values in the properties files (WEB-INF/admin.properties, and WEB-INF/application.properties). If this value is changed, the web application will no longer be able to decrypt the property files because the encryption key will be different than what was used to encrypt the files. Therefore, you will not be able to login to the Administration Console because it won't be able to figure out the name and password of the admin user. The following steps must be taken to save the property files with the new encryption keys:

  • Stop the Kinetic Calendar web application.
  • Delete the WEB-INF/admin.properties and WEB-INF/application.properties files.
  • Start the Kinetic Calendar web application, the properties files will be created using default values.
  • Login to the Adminstration Console using the default user - admin/admin.
  • Update the properties with the appropriate values. When the properties files are saved, they will be encrypted using the new encryption key as specified in the web.xml file.