<document>
  <header>
    <product>resin</product>
    <title>Resin 3.1.5 Release Notes</title>
  </header>

<body>

<localtoc/>

<s1 title="Resin 3.1.x">

<p>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.</p>

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

</s1>

<s1 title="Resin JSF">

<ul>
<li>See <a href="../examples/jsf-webbeans/">JSF demo</a></li>
</ul>

<p>The Resin JSF implementation has cleaned up tremendously in 3.1.5.
The jsf-12.jar is included in the resin/plugin directory.  To enable
Resin-JSF, just move the .jar file into the resin/lib directory.
Resin-JSF aims to be high performance, based on its tight integration
with Resin's JSP and use of Hessian as a serialization protocol.</p>

</s1>

<s1 title="Quercus">

<ul>
<li>See <a href="../doc/quercus.xtp">Quercus documentation</a></li>
</ul>

<p>Quercus has continued to steadily fix bugs and implement PHP functions.
The 3.1.5 release includes a major focus on the Wordpress and MediaWiki
killer apps by going through both with a fine toothed comb and fixing
bugs as they've been found.</p>

</s1>

<s1 title="Embedded Resin">

<ul>
<li>See <a href="../doc/resin-embedding.xtp">Resin Embedding</a></li>
</ul>

<p>Resin now includes an embedding facade to simplify integration with
IDEs and testing harnesses.  The embedded API includes test-support
methods to simplify and speed-up automated testing.</p>

</s1>

<s1 title="Resin Remoting">

<ul>
<li>See <a href="../doc/resin-remoting.xtp">Resin Remoting</a></li>
<li>See <a href="http://wiki.caucho.com/CXF">CXF support</a></li>
</ul>

<p>Resin's remoting capability has been refactored to include a simple
driver API.  Protocol factories return a servlet to marshal protocol
requests and responses.</p>

<p>The applications still use the servlet configuration to expose their
services as HTTP requests.  The protocols are now selected with an
easy to remember uri scheme like "hessian:", "cxf:" or "xfire:".</p>

</s1>

<s1 title="Resin Messaging">

<ul>
<li>See <a href="../doc/resin-messaging.xtp">Resin Messaging</a></li>
</ul>

<p>The configuration for Resin's messaging (JMS) support has been reworked
significantly.  JMS queues can now use the <code>BlockingQueue</code> API
for sending messages without requiring using JMS API (it's still JMS
underneath.)  Configuration uses a URI scheme system, so the memory queue
is "memory:", the file queue is "file:", etc.</p>

<p>Message listeners (beans) and JCA endpoint support has been reworked
significantly as well.  JCA is now significantly easier to configure.</p>

</s1>

<s1 title="IoC/EJB integration">

<ul>
<li>See <a href="../doc/resin-ejb.xtp">Resin EJB</a> documentation.</li>
</ul>

<p>Resin's EJB 3.0 support has been significantly refactored.  Both
EJB and IoC use the same underlying code to implement transaction aspects,
interception, and lifecycle events.</p>

</s1>

<s1 title="Resin-IoC and framework integration">

<p>The 3.1.5 release integrates <a href="resin-ioc.xtp">Resin IoC</a> with
several component frameworks, letting you use Resin's dependency injection
with objects created in the framework.</p>

<ul>
<li>Mule, documented at <a href="http://wiki.caucho.com/Mule">http://wiki.caucho.com/Mule</a></li>
<li>Spring, documented at <a href="http://wiki.caucho.com/Spring">http://wiki.caucho.com/Spring</a></li>
<li>Struts2, documented at <a href="http://wiki.caucho.com/Struts2">http://wiki.caucho.com/Struts2</a></li>
<li>Wicket, documented at <a href="http://wiki.caucho.com/Wicket">http://wiki.caucho.com/Wicket</a></li>
</ul>

</s1>

<s1 title="Maven 2 repository">

<ul>
<li>See <a href="http://wiki.caucho.com/Maven2">http://wiki.caucho.com/Maven2</a></li>
<li>See <a href="http://wiki.caucho.com/Ivy">http://wiki.caucho.com/Ivy</a></li>
</ul>

<p>The Resin 3.1 releases are now available in a Maven2 repository
at http://caucho.com/m2.  Snapshots are available at http://caucho.com/m2-snapshot.  Details and information on the resin-maven-plugin capabilityes (resin:run and resin:jspc) are
at <a href="http://wiki.caucho.com/Maven2">wiki: Resin and Maven2</a>.</p>

</s1>

<s1 title="Ant tasks">

<p>Resin ant tasks are now available in the resin/plugins/resin-ant.jar class.
Information is available
in <a href="http://wiki.caucho.com/Ant">wiki: Resin and Ant</a>.</p>

</s1>

<s1 title="Third-party integration">

<ul>
<li>See <a href="http://wiki.caucho.com/ActiveMQ">http://wiki.caucho.com/ActiveMQ</a></li>
<li>See <a href="http://wiki.caucho.com/Hibernate">http://wiki.caucho.com/Hibernate</a></li>
<li>See <a href="http://wiki.caucho.com/Hudson">http://wiki.caucho.com/Hudson</a></li>
<li>See <a href="http://wiki.caucho.com/Jackrabbit">http://wiki.caucho.com/Jackrabbit</a></li>
<li>See <a href="http://wiki.caucho.com/JUnit">http://wiki.caucho.com/JUnit</a></li>
<li>See <a href="http://wiki.caucho.com/Terracotta">http://wiki.caucho.com/Terracotta</a></li>
<li>See <a href="http://wiki.caucho.com/Trinidad">http://wiki.caucho.com/Trinidad</a></li>
</ul>

</s1>

</body>
</document>
