Caucho maker of Resin Server | Application Server (Java EE Certified) and Web Server


 

Resin Documentation

home company blog docs 
app server 
 Resin Server | Application Server (Java EE Certified) and Web Server
 

resin 4.0.21 release notes


Summary

4.0.21 continues focus on bug fixes and stability. 4.0.21 includes significant reworking of the networking state machine for keepalive timing issues.

Thanks to everyone who reported bugs in 4.0.20. We encourage people to report 4.0.21 bugs at http://bugs.caucho.com.

Command Line Interface

Resin cli added error codes for specific failures e.g. authentication error, wrong argument, deployment error.

Added a new command that makes resin boot process compatible with requirements of launchd (Mac OSX). 'start-with-foreground' command is an extension of 'start' command that keeps resin boot process running.

Deprecated 'watchdog' command. 'watchdog' command will still work, however, we recommend that 'start-with-foreground' is used instead.

Resin Eclipse Plugin

Better error reporting was added to let users know of git deployment failures.

Download and install functionality updated to install into version specific directory.

Resin Admin

Threads page was tweaked to sort threads by stack trace.

Graphing enhancements continue, with improved scrolling control.

Health

New health actions and conditions:

A Snapshot on OnAbnormalStop condition was added by default to health.xml. If upgrading we recommend you add this to your existing health.xml.

Example: <health:Snapshot> in health.xml
  <health:Snapshot>
    <health:OnAbnormalStop/>
  </health:Snapshot>

PDF Snapshot

The PDF has been expanded to include heap, cpu profile, thread dump, and JMX data. This additional data gives a fuller snapshot of the JVM's state.

command-line pdf-report

Example: generating a pdf report
unix> bin/resin.sh pdf-report
generated /usr/local/home/ferg/test/resin-pro-4.0.21/log/default-Summary-20110819T1434.pdf
Example: generating a pdf report with CPU profile
unix> bin/resin.sh pdf-report -profile-time 60
generated /usr/local/home/ferg/test/resin-pro-4.0.21/log/default-Summary-20110819T1434.pdf

WebSocket

The WebSocket implementation has been updated to the latest draft specification.

Resin's WebSocket implementation is stream based, meaning arbitrary-length messages are supported.

Messages are read in an application callback implementing WebSocketListener. The listener reads the InputStream until end of file which is the end of message, and then returns to allow the next message to be read.

WebSocketListener.java
package com.caucho.websocket;

public interface WebSocketListener {
  public void onReadBinary(WebSocketContext, InputStream is)
    throws IOException;
    
  public void onReadText(WebSocketContext, Reader is)
    throws IOException;
}

Messages are written using the WebSocketContext. The application starts new message with startBinaryMessage() or startTextMessage(), writes to the OutputStream and closes it on message end.

WebSocketContext.java
package com.caucho.websocket;

public interface WebSocketContext {
  public OutputStream startBinaryMessage()
    throws IOException;
    
  public PrintWriter startTextMessage()
    throws IOException;
}

jcache

We've been tracking the jcache specification updates. Jcache will provide a standard caching API. The latest changes include compare-and-set operations


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