skip to main content
Corticon Server: Integration & Deployment Guide : Configuring Corticon properties and settings : Common properties
 

Try Corticon Now

Common properties

This section describes the default values, options, and related notes for properties used by both Corticon Studio and Corticon Server. These common properties are stored as a set of defaults in the CcCommon.properties file that is packaged in the CcConfig.jar file.
Note: To set override values for these properties, edit the brms.properties file located at your work directory root --or, in Studio, the preferred location specified in Preferences. Do not edit the CcCommon.properties file.
Important - Some properties in the CcCommon.properties file that were used to control logging -- logverbosity, com.corticon.logging.thirdparty.logger.class -- are no longer used. See the topic Changing logging configuration for more information.
Log settings:
*logpath - The directory where logs are written. Default value is %CORTICON_WORK_DIR%/logs. Note: Use forward slashes as path separator, as in c:/Users/me/logs
*loglevel - The depth of detail in standard logging. Value can be one of:
*OFF - Turn off all logging
*ERROR - Log only errors
*WARN - Log all errors and warnings
*INFO - Log all info, warnings and errors (Default value). Include all entry types in thelogFiltersAccept list.
*DEBUG - Log all debug infomation and all messages applicable to INFO level. Includes all entry types in thelogFiltersAccept list.
*TRACE - Equivalent to DEBUG with some tracing logs. Includes all entry types in thelogFiltersAccept list.
*ALL - Maximum detail. Includes all entry types in thelogFiltersAccept list.
*logDailyRollover - Specifies whether to rollover the logs on a daily basis. Default value is true.
*logRolloverMaxHistory - Specifies the number of rollover logs to keep. Default value is 5.
*logFiltersAccept - When the log level is set to INFO or higher, this property allows logging of items that are listed. The filter values that can be in the comma-separated list are:
*RULETRACE - Records performance statistics on rules
*DIAGNOSTIC - Records service performance diagnostics at a defined interval (default is 30 seconds).
*TIMING - Records timing events.
*INVOCATION - Records invocation events.
*VIOLATION - Records exceptions.
*INTERNAL - Records internal debug events
*SYSTEM - Records low-level errors and fatal events.
*The default logFiltersAccept setting is: DIAGNOSTIC,SYSTEM
The loglevel and logpath can be changed using following methods, which will override this setting.
*ICcServer.setLogLevel(String)
*ICcServer.setLogPath(String)
logpath=%CORTICON_WORK_DIR%/logs
loglevel=INFO
logDailyRollover=true
logRolloverMaxHistory=5
logFiltersAccept=DIAGNOSTIC,SYSTEM
------------------------------------------------------------
Handles the default precision for Decimal values in Corticon Studio and Corticon Server . All Decimal values are rounded to the specified number of places to the right of the decimal point. Default is 6 (for example, 4.6056127 will be rounded, displayed, and/or returned as 4.605613).
decimalscale=6
------------------------------------------------------------
Determines whether XML responses from Corticon Server include newOrModified attributes indicating which elements of the XML document are new or have been modified. This flag also impacts the generation of service contracts (XSD, WSDL). Setting the flag to false results in more mainstream XML messaging without the newOrModified attributes. Default value is false.
enableNewOrModified=false
------------------------------------------------------------
Determines whether the returning XML CorticonResponse document must be valid with respect to the generated XSD/WSDL file. Ensuring compliance may require dynamic sorting which, if necessary, will slow performance. Default value is true (ensure compliance and perform the sorting, if necessary).
The lenientDateTimeFormat sub-property does the following:
*When false, forces all dateTime values to Zulu format which is the XML standard
*When true, allow any dateTime format supported by Java to be used in the payload
Default for ensureComplianceWithServiceContract is true (sort)
Default for lenientDateTimeFormat is false
com.corticon.ccserver.ensureComplianceWithServiceContract=true
com.corticon.ccserver.ensureComplianceWithServiceContract.lenientDateTimeFormat=false
------------------------------------------------------------
Determines the type of Corticon translation from JDOM to String. Different settings will yield different results.
*NORMALIZE: Mode for text normalization (left and right trim plus internal whitespace is normalized to a single space.
*TRIM_FULL_WHITE: Mode for text trimming of content consisting of nothing but whitespace but otherwise not changing output.
*TRIM: Mode for text trimming (left and right trim).
*PRESERVE: Mode for literal text preservation.
Default is NORMALIZE
com.corticon.format.documentToString=NORMALIZE
------------------------------------------------------------
Determines whether the Foundation APIs will perform automatic validation of assets when they are loaded. API-controlled validation can help improve performance by validating assets only when necessary. If this flag is set to true, the APIs will validate assets at load time if: ixia_locid="138">
*New validation rules have been added to the APIs.
*Related assets have been changed in a manner that justifies revalidation.
For example, if a Rulesheet's Vocabulary has been changed, the API will automatically revalidate the Rulesheet to ensure that all Rulesheet expressions are valid with respect to the Vocabulary changes.
If this flag is set to false, the APIs will not perform any validation when the asset is loaded; thus, the GUI is required to explicitly call the validate API during editor initialization. Default is true.
com.corticon.validate.on.load= true
------------------------------------------------------------
Control of cross-asset validation behavior. The default setting, false, causes cross-asset validation to occur immediately whenever any change is made. Consider an example where a Vocabulary Editor and three associated Rulesheet Editors are open simultaneously. If this setting is false, a Vocabulary update will cause the Rulesheets to revalidate themselves in real time. This dynamic validation provides instant feedback but carries a performance cost.
The alternative setting, true, causes cross-asset validation to be deferred until the associated editor is activated. In the prior example, a Vocabulary update will trigger only Vocabulary validation rules. Rulesheet Editors will not automatically revalidate themselves until they are activated. This setting can improve performance at the expense of immediate feedback.
Default value is false.
com.corticon.resource.validate.on.activation=false
------------------------------------------------------------
Control of vocabulary validation behavior on delete. The default value true ensures that a vocabulary will be in a properly identified state after a delete operator is conducted. This may cause performance issues with very large vocabularies. Default value is true.
com.corticon.vocabulary.validate.on.delete=true
------------------------------------------------------------
Determines whether foundation API method setSupportedLocales will automatically rearrange localizations, potentially changing the base locale of the asset.
The default setting (true) will cause the API to automatically swap localized values into the base slot if the base locale in the input array is different from the asset base language. This allows the client program to designate what was originally an added (non-base) locale as the new base locale of the asset; however, this setting also imposes a precondition: when setSupportedLocales is called, the asset must contain complete localizations for every localizable element, or the API will throw an exception. This precondition is imposed because the API contract always requires a base value for every localizable element; while localizations are optional, a base value must never be null.
If this flag is set to false, the system will allow the client program to indiscriminately change the set of supported locales without preconditions. In this mode, the system will arbitrarily update the asset's language legend and will remove any localizations while leaving the base values unchanged. While this ensures that API contract is not violated (because the base values remain unaffected), it puts the onus on the client program to manually update all base values and localizations to match the specified locale array; failure to do so may leave the language legend and localizations out of synch. Default is true.
com.corticon.localization.setsupportedlocales.swap= true
------------------------------------------------------------
Determines whether the Vocabulary API will use a hash map to speed up Vocabulary element lookups. This can improve Rulesheet parsing performance, particularly for applications with larger Vocabularies. Default is true.
com.corticon.vocabulary.cache= true
------------------------------------------------------------
List of Corticon Properties that will be used in the Checksum Calculations during the Post Load of the Models. This will help determine if we need to revalidate the Model.
com.corticon.validation.checksum.propertylist= com.corticon.crml.OclDate.date
format;com.corticon.crml.OclDate.datetimeformat;com.corticon.crml.OclDate.ti
meformat;com.corticon.crml.OclDate.permissive;com.corticon.crml.OclDate.mask
literals;decimalscale;com.corticon.crml.OclDate.defaultDateForTimeValues;com
.corticon.crml.OclDate.defaultDateFormatForTimeValues;com.corticon.validate.
on.load;com.corticon.validate.on.activation;com.corticon.localization.setsup
portedlocales.swap;hibernate.override.catalog;hibernate.override.schema;hibernate.override.table
------------------------------------------------------------
Used in XML translation. Based on this setting, extra processing ensures that the incoming document's Enities, Attributes, and Associations match the namespaces defined in the Vocabulary. If the Vocabulary Entity or Attribute does not have an explicitly set namespace value, the Element's namespace must be the same as the namespace for the WorkDocuments Element. If the namespaces don't match, the Entity, Attribute, or Association will not be read into memory during execution. Also, if new Enitities, Attributes, or Associations are added to the XML because of rules, then explicitly set Vocabulary value will be used, otherwise the WorkDocument's namespace will be used. Default value is false.
com.corticon.xml.namespace.ignore=false
------------------------------------------------------------
Specifies whether the XSD and WSDL generators adds the usage attribute on the CorticonRequest and CorticonResponse definition. The "usage" is deprecated, and no longer used. However, to be backwards compatible with customers that have already generated proxies from older Schemas or WSDLs, the user now has the option to add the usage to the generated .xsd or .wsdl. Default value is false.
com.corticon.servicecontracts.append.usagelabel=false
------------------------------------------------------------
By default, newly created entities in a service call out are added to the work document. If these entities are not needed in the output they can be created without registering them the work document. If property value = false, the SCO created entities are not registered in the work document. Default value is true.
com.corticon.services.registerNewSCOEntities=true
------------------------------------------------------------
By default, newly created entities are added to the work document. If these entities are not needed in the output they can be created without registering them in the work document. If property value = false, newly created entities via rules will not be registered in the work document. Default value is true.
com.corticon.reactor.engine.registerNewEntities=true
------------------------------------------------------------
By default when the value of now is pinned the milliseconds are set to zero. This property can specify how to deal with the nano seconds (which can affect the milliseconds).
*Value of ZERO_MILLIS sets the nanos to 0 (which also sets milliseconds to zero)
*Value of ZERO_NANOS sets only the last 3 digits of the nanos to zero (which does not modify millis)
*Value of NO_ZERO does not modify the nanos (This has shown some rare side effects where datetime appears equal however the hidden nanos values cause comparison to be not equal)
Default value is ZERO_MILLIS
com.corticon.crml.OclDate.nanos=ZERO_MILLIS
------------------------------------------------------------
Given the different behavior in the client provided by the SOAP stack upgrade, the Java and IIS servers have different enough required payloads that separate clients for each need to be created. By default the studio will attempt to connect to the server and assume the server is running inside Java. When this value is not set a value of JAVA will be assumed. Value of JAVA will instruct studio to use the SOAP client for a Corticon server running inside a Java container. Value of IIS will instruct studio to use the SOAP client for a Corticon server running on IIS.
com.corticon.studio.client.soap.clienttype=JAVA
* Date/time formats in CcCommon.properties