Registry parameters

Release 1.0 - ...

Server and service addresses

The CMS engine, at site startup, will read the web.config and smartsite.config configuration files to determine a number of configured addresses and a few other settings. These addresses and settings will be stored in the Site.Globals object (Smartlist), so they will be available throughout the entire code.

However, optionally you can overrule the automatically determined addresses and settings within the registry, if for some reason you know the addresses in the web.config and/or smarsite.config are not the correct ones for your configuration or you have configured the CMS engine to use a separate (IIS) site and its web.config does not contain the service addresses (since the Publication Engine will run the services, the serviceModel configuration section is only required within the Publication Engine's web.config).

The registry values described below (InteropServiceAddress, SchemaServiceAddress, PublicationServerAddress, DefaultSecurityZone) are usually not needed, so remove them unless you are absolutely confident you'll need them. If you do need them, they should be located at the root of the site's registry.

InteropServiceAddress

String; no default.

The address at which the InteropService is configured to listen. Should correspond with the endpoint address of the InteropService as configured within the web.config of the target Publication Engine (e.g. net.pipe://localhost/sitename/InteropService). Usually read from the web.config configuration file.

SchemaServiceAddress

String; no default.

The address at which the SchemaService is configured to listen. Should correspond with the endpoint address of the SchemaService as configured within the web.config of the target Publication Engine (e.g. http://dns name/sitename/SchemaService). Usually read from the web.config configuration file.

PublicationServerAddress

String; no default.

The address at which the Publication Engine is configured to listen (the public address of your site). Usually read from the smartsite.config configuration file.

DefaultSecurityZone

String; no default.

Determines the default security zone used by the SXML Editor, which should be applied if a certain field does not have a SecurityZone CTFP. Usually read from the smartsite.config configuration file.

 

Other registry settings

The registry settings below alter the behaviour of certain Smartsite features. These settings can only be applied within the registry, they do not have a corresponding counterpart in one of the configuration files (in contrast with the settings described above). (When the name of a registry setting contains a "/", the first part of the name until the last "/"-characer represents the registry key within the site's registry, whereas the last part is the actual name of the registry string value.)

TestServerAddress

String; no default.

Server address which will be used by the Smartsite iXperion CMS Control Panel (Smartserver). This way, you can use the Smartsite iXperion CMS Control Panel as CMS server instance and the TestSuite as Publication Engine.
Should only be used for development purposes, never on a production server.

When you switch back to running the site using IIS you should remove or disable (e.g. prefix the registry entry with an underscore) this setting. (Otherwise SmartSys will fail to map url's to the correct site.)

ExecutePublicationServerRequestOnStartUp

Boolean; default: True.

When the CMS engine starts and a PublicationServerAddress (see above) has been determined, the CMS engine will execute a http request to the Publication Engine, which will start the Publication Engine if it wasn't started yet.  Add the ExecutePublicationServerRequestOnStartUp registry value to the root of the site's registry with value False to disable this feature.

Debugging/DisableContentValidation

Boolean; default: False.

Debugging option to disable the Content Validation entirely.

BackgroundComponents/Outscaling/StartDelay

Numeric; default: 30.

Sleep interval in seconds. The Outscaling background component will execute a Thread.Sleep for the specified interval when it is started (as part of the Site startup procedure). This start delay gives the Publication Engine time to start as well (e.g. due to the http request of the ExecutePublicationServerRequestOnStartUp feauture as described above).

CMS/AIM/ScanIntervalMS (1.4+)

Numeric; Default: 100

Sleep interval between each item during the background AIM scan done ny the CMS engine by requesting items on the AIM channel. This setting replaces the CMS/AIM/MaxCPULoad setting. 

Smartsite Export registry settings

The Smartsite Export module gives you the option to render a selection of items (optionally including their children) in a specified channel. When the option Include linked data has been enabled, the Smartsite Export module will perform a post-process step on the rendered content. The registry settings described below are only used within this post-processing step.

CMS/Export/UseLocalSchema

Boolean; default: True (when other requirements are met as well).

The Smartsite Export module (when the option Include linked data has been enabled) will use xhtml parsing to determine which linked files must be included within the export. However, loading xhtml into an Xml DomDocument object requires a valid schema reference, otherwise named (html) entities can not be resolved. The standard schema reference to w3.org which is usually included in a (xhtml) Doctype definition would suffice, but this will slow down the parsing of the xhtml significantly.

To be able to parse the xhtml correctly and without the performance penalty, the Smartsite Export module will by default use a local schema file, containing just the named (html) entities. This feature will only be used when the source xhtml contains a xhtml namespace declaration on the html element and no doctype definition is present or a doctype definition is present which refers to one of the public xhtml schemas at w3.org.

To disable this feature, add UseLocalSchema registry value to the CMS/Export key of the site's registry, and give it the value False.

CMS/Export/SchemaFile

String; default: ../system/schemas/dtd/xhtml1-entities-only.dtd

Registry setting to overwrite the default local schema file. You need to specify a relative path (url notation, relative to the www-subfolder) when you want to overwrite the default local schema file.

CMS/Export/ResolveExternals

Boolean; default: False.

By default the ResolveExternals property of the Xml DomDocument object (as discussed above within the UseLocalSchema registry setting) will be set to False, unless the UseLocalSchema option will be used.

When you provide a custom doctype definition which includes a reference to another local schema file (in which case the UseLocalSchema option will not be used), you should use this registry setting to set the ResolveExternals property of the Xml DomDocument object to True. (The value of this registry setting, converted to a boolean, will be used directly as input for the ResolveExternals property.)

CMS/Export/UseCompliance

Boolean; default: True.

Fallback mechanism when the rendered content could not be loaded as xhtml into an Xml DomDocument object. When this option is True (which is the default when this registry setting does not exists), Smartsite's W3C library (SixW3C.dll) will be used to convert the rendered content into valid xhtml.

Render Settings

Related to the Export module, when an item (not a legacy channel) needs to be rendered, a request to do so is passed to the Publication Engine using WCF. "Between" the CMS engine and the WCF service of the Publication Engine actually honoring this request, the Smartsite.InteropServicesClient assembly is used as kind of proxy object, which makes it possible to use WCF to WCF communication.

However, when the render request takes too long (longer than the default timeout value), the client will receive an "operation timeout" error:

This request operation sent to net.pipe://localhost/Doc6/InteropService did not receive a reply within the configured timeout (00:00:10). The time allotted to this operation may have been a portion of a longer timeout. This may be because the service is still processing the operation or because the service was unable to send a reply message. Please consider increasing the operation timeout (by casting the channel/proxy to IContextChannel and setting the OperationTimeout property) and ensure that the service is able to connect to the client.

Whereas the various timeout values for the WCF service(s) itself can be set within the web.config file, this is not the case for the proxy object inside the Smartsite.InteropServicesClient assembly.

The following registry settings can be used to adjust the default timeout values for the proxy object. Usually it would suffice to just create the registry settings ReceiveTimeOut and SendTimeOut and specify e.g. 60 (seconds) as value.

CMS/Rendering/CloseTimeOut

Numeric; default: 10.

Interval of time (in seconds) provided for a close operation to complete.

CMS/Rendering/OpenTimeOut

Numeric; default: 10.

Interval of time (in seconds) provided for an open operation to complete.

CMS/Rendering/ReceiveTimeOut

Numeric; default: 10.

Interval of time (in seconds) provided for a receive operation to complete.

CMS/Rendering/SendTimeOut

Numeric; default: 10.

Interval of time (in seconds) provided for a send operation to complete.

CMS/Rendering/MaxStringContentLength

Numeric (Integer); default: 1048576.

Not a timeout value, but with this registry setting you can increase the maximum allowed size of a return message, or in other words the maximum size of the html returned from the render request.