Saké Configuration

Each individual Saké application is configured separately via an initialization file that is loaded at startup from located in the "config" directory of your Saké installation. The initialization file is a relatively simple XML file with a clear and easily-modified structure. For example, the initialization file for Saké Mail is called "mail.ini", and it is located in the "config" directory of your Saké installation, so if you have a Windows machine with a Saké installation in "c:\sake", your configuration file for Saké Mail will be located in "c:\sake\config\mail.ini".

The initialization file consists of a number of entries that set certain properties at runtime. Each entry is structured as an XML tag as follows:

<entry name="sake.mail.somesetting" value="some value"/>

In order to modify a value, simply modify the contents of the "value" tag, the same way that you would edit an HTML tag. For example, to set the parameter "sake.mail.somesetting" to "12", simply change the above line to read:

<entry name="sake.mail.somesetting" value="12"/>

Many settings are general Saké settings that can be configured in the initialization files to provide per-application control over settings. Any setting of the form "sake.somesetting", rather than "sake.someapp.somesetting" is a general Saké setting. This document contains a list of general Saké settings and descriptions of their functions. For configuration help on specific Saké applications, use the following links:

Saké Mail - Configure Saké Mail


A list of general Saké settings and descriptions of the entries follows:


sake.urltemplatelocation
The location of your Saké templates, from the point of view of your web browser. This location is used as a prefix when Saké applications need to refer to images or templates in URLs that are fed to a user's web browser. For example, if a Saké application produces a web page that contains an in-line image called "i_someimage.gif", that sits in the "templates/images/" directory of your Saké installation, and you have sake.urltemplatelocation set to "/templates/", then the Saké will build a URL "http://www.myserver.com/templates/images/i_someimage.gif" to refer to the image. If for some reason you are unable to configure your web server to map the "templates" directory of your Saké installation to the alias "/templates", then you can use sake.urltemplatelocation to change the URLs that Saké produces. For example, if for some reason you must map your Saké "templates" directory to the URL "/webapps/sake/templates/", then you can set "sake.urltemplatelocation" to "/webapps/sake/templates/", and Saké will produce the URL "http://www.myserver.com/webapps/sake/templates/images/i_someimage.gif" to refer to the same image.


sake.templatetype
This value specifies whether to read HTML templates or XML templates. For more on template customization and template formats, refer to the customization page. If this value is set to "html", then Saké will load templates from the "html" directory of the specific application's template directory. If this value is set to "xml", then Saké will load templates from the "xml" directory of the specific application's template directory.


sake.logdetaillevel

This setting controls the amount of information that is stored in the log files that Saké applications produce. Saké produces log output on "standard output", which is automatically logged by some servlet runners. JRun, for example, stores log output in "/jrun/jsm-default/stdout.log" by default, where "/jrun/" is the location of your JRun installation. Saké also can create logs of its own. Detail levels are:


0 - no log messages at all, only error messages.
1 - only very high level log messages, like 'initializing'.
2 - almost all details about what is going on.
3 - every single possible detail about what is going on.


sake.debugmode
Specifies whether this servlet is in debug mode or not. This is primarily useful for dumping the contents of the current HTTP session to the HTTP response. If you don't have any idea what that means then set this to 'false' or comment it out entirely.


sake.maximumidlesession
This is the maximum time that a user session can sit idle before the user will be forced to log in again. When the user has waited too long and tries to resume their session, they will be notified on the login page that their session was terminated due to inactivity. This value is expressed in seconds.


sake.purgeidlesessionafter
This is the maximum time that a user session can sit around before it is purged entirely from the server's memory. If this time runs out then the memory devoted to the user's session will be reclaimed and can be available for other users' sessions. If a user leaves without logging out of the system, this is the amount of time that their session will stay alive. If this time runs out on a session, the user will not be warned when they try to resume the session, they will simply be presented with a login screen as though they were visiting for the first time. For this reason, this value is generally set much higher than the 'Maximum Idle Session' value. If your server is running low on memory due to zombie user sessions because of people leaving without logging out, then you may want to lower this value to eliminate abandoned sessions more quickly. This value is expressed in seconds.


sake.precachetemplates
Specifies whether or not to pre-cache interface templates at initialization. If templates are not pre-cached, then they will be loaded on-demand at the appropriate time. This can create the illusion that the application is sluggish if a user is the first to access a given interface template. Pre-caching at startup will eliminate this lag, but will cause initialization to take a few seconds longer. This can be annoying if you are constantly restarting the application for any reason. The only reason why this is set to 'false' by default is because it can make startup take a while, and that may make life difficult for people who are trying to get things working for the first time. We recommend using the pre-cache option for production installations.


sake.defaultskin
Specifies the skin to use if a user has not explicitly specified the desired skin using the "sake.skin" parameter. This setting defaults to "default".


sake.defaultwmlskin
Specifies the skin to use for WAP clients if a user has not explicitly specified the desired skin using the "sake.skin" parameter. This setting defaults to "wml".


sake.topframe
Some installations may need to be hosted within a specific frame other than "_top". Occasionally Sake applications need to aim contents at specific frames. Use this to set the name of the frame that will be the top level for this installation.


sake.dontcachetemplates
Set this to 'true' to prevent Sake from caching templates in memory at runtime. If you set this then Sake will fetch each template from disk each time you request a page. This behavior is obviously not desired in production installations, but if you are editing a template set then it is really nice. Beware that if you set this option to 'true' that certain operations can take an obscenely long time. It is a very poor idea, for instance, to set the number of messages per page option to 100 with this option set to true. Each message in the list requires a snippet from the template, which means that you will be waiting for minutes.

Copyright © 1999 - 2002 Endymion Corporation
All rights reserved.
Carpe Noctem