Each instance of the Application Server has its own configuration file that specifies some basic settings. Instance configuration files are plain XML files.
Instance configuration files that are created by the Application Server Setup Program are stored in the Application Directory. The Application Server Instance Setup Program stores instance configuration files in the Application Directory of the Application Server Instance. All setup programs will name the instance configuration file as <instanceIdentifier>.icfg.
Which instance configuration file is actually used is decided by the Application Server during startup. If advised by the command line argument -i the Application Server will try to load that instance configuration file. If not advised by the command line the Application Server will load the alphabetically first file in the Application Directory that has the extension .icfg.
Use extreme caution when modifying instance configuration files. Erroneous configuration files will hinder the Application Server to start, or you might even cause data loss. Before modifying configuration files always make a backup of the original file!
The InstanceIdentifier element specifies the instance identifier that will be used by this instance of the Application Server. Each instance must have its own unique (for that computer) instance identifier.
The AssignAuthorPrivilegesToNewFeatures element defines if users creating new features will automatically be assigned Author privilege on that features. Default value for this setting is true.
The CommunicationConfiguration section defines how the Application Server provides its services and therefore also defines how clients can access the Application Server. Table 1 describes all settings in the CommunicationConfiguration section.
The DirectoryEnvironmentConfiguration defines where on the file system the Application Server stores files. These directories are created by the setup programs and the appropriate permissions for these directories are also set by the setup program. If you want to change the location of these directories you will have to create those directories manually and assign the appropriate permissions.
The DatabaseConfiguration section defines how the Application Server can access the Application Server Database. Listing 1 shows an example with integrated security enabled i.e. with Windows authentication. Listing 2 shows an example with username password authentication. Note that if you use username password authentication the password will be stored in this configuration file as plain text. Therefore you should make sure that this configuration file can only be read by the user who runs the Application Server.
Setting |
Required |
Description |
enableTcp |
No |
Defines if the TCP protocol is enabled for service requests to the Application Server. See chapter Protocols for more information. Default: false |
tcpPort |
No |
Defines the port for TCP communication. See chapter Protocols for more information. Default: 5660 When using TCP as protocol different instances have to use different ports. This restriction does not apply to HTTP connections. |
enableHttp |
No |
Defines if the HTTP protocol is enabled for service requests to the Application Server. See chapter Protocols for more information. Default: true |
httpPort |
No |
Defines the port for HTTP communication. See chapter Protocols for more information. Default: 80 |
enableHttps |
No |
Defines if the HTTPS protocol is enabled for service requests to the Application Server. See chapter Protocols for more information. Default: false |
httpsPort |
No |
Defines the port for HTTPS communication. See chapter Protocols for more information. Default: 443 |
certificateName |
No |
The name of the certificate in the certificate cache that is used for communication with clients. See chapter Certificates for more information. Default: RedbexDefaultCertificate |
Table 1: Settings in the CommunicationConfiguration section
Setting |
Required |
Description |
BinaryStorageDirectory |
Yes |
Directory for storing binary data. See Directory Environment for more details. |
TemporaryDirectory |
Yes |
Directory for storing temporary data. See Directory Environment for more details. |
CacheDirectory |
Yes |
Directory for storing cache data. See Directory Environment for more details. |
LogDirectory |
Yes |
Directory for storing log files. See Directory Environment for more details. |
ModulesDirectory |
Yes |
Directory for storing modules that are dynamically loaded by the Application Server on start up. |
OptionalLogsDirectory |
Yes |
Directory where the server stores data change log files. |
TranslationsDirectory |
No |
If set to an existing directory this advices the Application Server to read translations from all files in this directory. This setting is optional and is intended to be used when translating the Application Server into a different language in collaboration with Redbex |
Table 2: Settings in the DirectoryEnvironmentConfiguration section
Setting |
Required |
Description |
Server |
Yes |
Address of the database server, including the database server instance if used. Syntax: <databaseServerAddress>[\<instancename>] Examples: localhost localhost\SQLExpress 192.168.0.12 mydatabaseserver.company.com |
Database |
Yes |
Name of the database to connect to |
ConnectionTimeout |
No |
The connection timeout Default: 15s |
IntegratedSecurity |
Yes |
Defines if integrated security shall be used. If true the Database will be accessed as the user who is running the Application Server. If false you have to specify a username and password. |
UserName |
Yes if IntegratedSecurity is true |
User name to be used if IntegratedSecurity is false. |
Password |
Yes if IntegratedSecurity is true |
Password to be used if IntegratedSecurity is false. |
Table 3: Settings in the DatabaseConfiguration section
<?xml version="1.0" encoding="utf-8"?> <InstanceConfiguration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <InstanceIdentifier>services</InstanceIdentifier> <CommunicationConfiguration> <EnableTcp>false</EnableTcp> <EnableHttp>true</EnableHttp> <EnableHttps>false</EnableHttps> <TcpPort>5660</TcpPort> <HttpPort>80</HttpPort> <HttpsPort>443</HttpsPort> <CertificateName>RedbexDefaultCertificate</CertificateName> </CommunicationConfiguration> <DirectoryEnvironmentConfiguration> <BinaryStorageDirectory>C:\ProgramData\redbex\A282\Binary</BinaryStorageDirectory> <TemporaryDirectory>C:\ProgramData\redbex\A282\Temporary</TemporaryDirectory> <LogDirectory>C:\ProgramData\redbex\A282\Log</LogDirectory> <CacheDirectory>C:\ProgramData\redbex\A282\Cache</CacheDirectory> <ModulesDirectory>C:\ProgramData\redbex\A282\modules</ModulesDirectory> <DataChangeLogsDirectory>C:\ProgramData\redbex\A282\DataChangeLogs</DataChangeLogsDirectory> </DirectoryEnvironmentConfiguration> <DatabaseConfiguration> <IntegratedSecurity>true</IntegratedSecurity> <Server>dbServer012</Server> <Database>redbex Application Server Database - A282</Database> <ConnectionTimeout>15</ConnectionTimeout> </DatabaseConfiguration> </InstanceConfiguration> |
Listing 1: Example instance configuration file
<?xml version="1.0" encoding="utf-8"?> <InstanceConfiguration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <InstanceIdentifier>services</InstanceIdentifier> <CommunicationConfiguration> <EnableTcp>false</EnableTcp> <EnableHttp>true</EnableHttp> <EnableHttps>false</EnableHttps> <TcpPort>5660</TcpPort> <HttpPort>80</HttpPort> <HttpsPort>443</HttpsPort> <CertificateName>RedbexDefaultCertificate</CertificateName> </CommunicationConfiguration> <DirectoryEnvironmentConfiguration> <BinaryStorageDirectory>C:\ProgramData\redbex\A282\Binary</BinaryStorageDirectory> <TemporaryDirectory>C:\ProgramData\redbex\A282\Temporary</TemporaryDirectory> <LogDirectory>C:\ProgramData\redbex\A282\Log</LogDirectory> <CacheDirectory>C:\ProgramData\redbex\A282\Cache</CacheDirectory> <ModulesDirectory>C:\ProgramData\redbex\A282\modules</ModulesDirectory> <DataChangeLogsDirectory>C:\ProgramData\redbex\A282\DataChangeLogs</DataChangeLogsDirectory> </DirectoryEnvironmentConfiguration> <DatabaseConfiguration> <IntegratedSecurity>false</IntegratedSecurity> <Server>dbServer012</Server> <UserName>RedbexApplicationServer</UserName> <Password>a(e!§ju34,mn</Password> <Database>redbex Application Server Database - A282</Database> <ConnectionTimeout>15</ConnectionTimeout> </DatabaseConfiguration> </InstanceConfiguration> |
Listing 2: Example instance configuration