<document>

Resin now has a wiki.

The configuration file EL can now support a library of predefined functions. The new functions are:

- class_exists(name) - returns true if the class is loadable
- jndi(name) - equivalent to jndi:lookup
- jndi_lookup(name) - equivalent to jndi

The cluster encoding in the session cookie is now controllable by cookie-module-cluster, defaulting to false.

If true, session cookie values can start with modulo values of the index. So a two server cluster could generate 'a', 'c', 'e', g', etc. for the index='1' server.

If false, the session cookie value matches the cluster index. So the two server cluster would only generate the 'a' prefix.

Important flusing/buffering issues with isapi_srun.dll fixed.

GzipFilter now understands "deflate" as well as "gzip". "gzip" has priority, currently.

There is now a task resource for launching a thread for long-running initialization objects. The work task just needs to implement java.lang.Runnable.

<example> <resource type="com.caucho.resources.TaskResource"> <init> <work resin:type="qa.TestWork"/> </init> </resource> </example>

The EL variable \${__FILE__} is now available, referring to the current configuration file.

Added an enable-range attribute to the <cache>, defaulting to true. Makes it possible to disable the range support if necessary.

Added read-data-source and xa-data-source to <ejb-server>. In some cases, deployments may use a different <database> configuration for read-only requests, e.g. a <database> with multiple load-balanced <driver> blocks, but use a different <database> for the writes and transactions.

</document>