<document>
<localtoc/>

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.

- See JSF demo

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.

- See Quercus documentation

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.

- See Resin Embedding

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.

- See Resin Remoting
- See CXF support

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

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:".

- See Resin Messaging

The configuration for Resin's messaging (JMS) support has been reworked significantly. JMS queues can now use the `BlockingQueue` 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.

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

- See Resin EJB documentation.

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.

The 3.1.5 release integrates Resin IoC with several component frameworks, letting you use Resin's dependency injection with objects created in the framework.

- Mule, documented at http://wiki.caucho.com/Mule
- Spring, documented at http://wiki.caucho.com/Spring
- Struts2, documented at http://wiki.caucho.com/Struts2
- Wicket, documented at http://wiki.caucho.com/Wicket

- See http://wiki.caucho.com/Maven2
- See http://wiki.caucho.com/Ivy

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 wiki: Resin and Maven2.

Resin ant tasks are now available in the resin/plugins/resin-ant.jar class. Information is available in wiki: Resin and Ant.

- See http://wiki.caucho.com/ActiveMQ
- See http://wiki.caucho.com/Hibernate
- See http://wiki.caucho.com/Hudson
- See http://wiki.caucho.com/Jackrabbit
- See http://wiki.caucho.com/JUnit
- See http://wiki.caucho.com/Terracotta
- See http://wiki.caucho.com/Trinidad

</document>