Caucho Technology
documentation
examples
changes

release notes
change logs

resin 3.1.13
resin 3.1.9
resin 3.1.8
resin 3.1.6
resin 3.1.5
resin 3.1.4
resin 3.1.3
resin 3.1.2
resin 3.1.1
resin 3.1.0

resin 3.1.3 release notes


Resin 3.1.x

Resin 3.1.x is a development branch. New capabilities will be added along with bug fixes for future versions of the Resin 3.1.x branch.

Deployments which need a Resin version with only bug fixes should use the Resin 3.0.x branch.

Startup Time

Resin 3.1.3 has improved the startup time by enhancing the .jar processing.

HttpProxyServlet

Added fail-recover-time and connection load balancing for HttpProxyServlet.

Hessian

Hessian debugging has been improved. The HessianServlet now has a debugging attribute. If true, and if the java.util.logging level is "fine", the HessianServlet will log the input and output of the servlet.

Hessian debugging has also added HessianDebugInputStream and HessianDebugOutputStream which wrap any java.io InputStream or OutputStream and print a debuggable version of the Hessian data.

Hessian has also added streaming capabilities for asynchronous comet-style applications. Each written object is enclosed in a packet which allows the receiving end to asynchronously detect the end of the object.

Caching

The file servlet now uses CRC-64 to generate the ETag for files. The new ETag improves caching in clustered environments.

Versioning

<web-app-deploy> now supports a "versioning" attribute. If true, multiple .war files with version numbers will be resolved to the most recent version, e.g. the url /foo would choose webapps/foo-1.1 over webapps/foo-1.0.

After deployment, old sessions will stay with the old version for a period of time. New sessions will migrate to the new version. This will simplify application version upgrades.

Jdbc Pooling

Added max-idle-count to limit the idle connection size (default 1024).

Admin

Added JdbcDriverMXBean with start()/stop() to allow control of load-balanced database drivers.

JSF

Resin 3.1.3 introduces our JSF 1.2 implementation. The implementation includes fast JSP code generation. The JSP generation can be configured like:

<web-app-default>
  <jsp fast-jsf="true"/>
</web-app-default>

Comet/Streaming Servlets

Resin 3.1.3 introduces a Comet API for streaming servlet. Application with long-lived connections implementing server-push will use CometController and CometServlet

We've also added a Comet example.

Config

Added keepalive-connection-time-max, limiting the total time connections can live with keepalives.

Session Generation

Applications can now give a hint to the SessionManager about which server should own the session. Applications which use distributed caches like EhCache can use this capability to improve locality.

The "caucho.session-server-id" attribute of the request object sets the value. It can either be a number (the index) or the server-id of the target server.

request.setAttribute("caucho.session-server-id", "app-a");

session = request.getSession(true);

Administration

The administration pages at /resin-admin have been updated to add clustering and database pooling capabilities.

Amber

The performance of Amber (JPA) has been improved for loads and cached queries.

rewrite-dispatch

<rewrite-dispatch> now allows <resin:import> in its rules. The imported file will not force a Resin restart when it's modified, making common rewrite updtes faster.

Quercus

Quercus for 3.1.3 has implemented the PHP 6 unicode.semantics, which defaults to false like PHP 6. Many PHP application will now run on Quercus with no extra configuration required.

Quercus 3.1.3 has also fixed a significant number of bugs, improviding compatibility with PHP 6.


Copyright © 1998-2008 Caucho Technology, Inc. All rights reserved.
Resin ® is a registered trademark, and Quercustm, Ambertm, and Hessiantm are trademarks of Caucho Technology.