📄 resin-3.0.9.xtp
字号:
<document> <header> <product>resin</product> <title>Resin 3.0.9 Release Notes</title> </header><body><localtoc/><s1 title="Distribution/licensing changes"><p>The Resin distribution for 3.0.9 has been refactored into two distributions:</p><ul><li>Resin Professional - Most companies and organizations will use Resin Professional. Includes performance, caching, and clustering capabilities.</li><li>Resin Open Source (GPL) - Contains all functional components of Resin,including EJB, but excludes performance and clustering capabilities.</li></ul></s1><s1 title="EJB 2.1 refactoring"><p>The EJB implementation has been refactored to use a new underlyingpersistence engine (Amber). It would be wise for current CMP/EJB usersto take extra care verifying Resin 3.0.9 before putting it into production.</p></s1><s1 title="EJB 3.0 experimental features"><p>See the <a href="examples|ejb.xtp">EJB 3.0 tutorials</a> for examples.</p><p>Resin 3.0.9 includes an implementation the EJB 3.0 early-draft spec features.EJB 3.0 has a number of significant changes over EJB 2.1:</p><ul><li>Uses JDK 1.5 annotations (@Entity, @Column, etc.) instead of deployment descriptors.</li><li>Home interfaces are no longer needed</li><li>Entities are beans (i.e. not pooled objects as in EJB 2.1)</li><li>Entities can use JDO-style field-enhancement instead of method enhancement</li></ul></s1><s1 title="JDK 1.5 Transaction Annotations"><p>Resin 3.0.9 has an experimental support for annotation-based transactions.The annotations use the EJB 3.0 markers. The enhancement is configuredas part of the <class-loader> configuration.</p><p>The following code instructs Resin to enhance MyBean so a transactionis always started when businessMethod is called. The<code>ResinEnhanced</code> is required.</p><example title="MyBean.java">package qa;import javax.ejb.TransactionAttribute;import javax.ejb.TransactionAttributeType;import com.caucho.java.enhancer.ResinEnhanced;@ResinEnhancedpublic class MyBean { ... @TransactionAttribute(TransactionAttributeType.REQUIRED) public void businessMethod(String arg1) throws FooException { ... }}</example><p>The configuration adds the bytecode enhancer withthe transaction enhancer enabled.</p><example title="web.xml"><web-xml xmlns="http://caucho.com/ns/resin"> <class-loader> <enhancer resin:type="com.caucho.java.enhancer.ClassEnhancer"> <enhancer resin:type="com.caucho.transaction.enhancer.TransactionEnhancer"/> </enhancer> </class-loader> ..</web-xml></example> </s1><s1 title="JDK 1.5 Injection Annotations"><p>As an experimental feature, servlets can use JDK 1.5Injection annotations.</p></s1><s1 title="Hessian/Burlap server headers"><p>Hessian and Burlap services can now pick up the protocol headersusing the <code>ServiceContext.getHeader</code> method.</p><example>package qa;import com.caucho.services.server.GenericService;import com.caucho.services.server.ServiceContext;public class MyService extends GenericService { public Object header() { return ServiceContext.getContextHeader("a"); }}</example></s1><s1 title="validate-taglib-schema"><p>Allows the taglib schema validation to be turned off.This should only be used in the case where a .tld file in athird-party jar is invalid.</p></s1><s1 title="Hessian/Burlap servlet options"><p>The Hessian servlet can now specify its SerializerFactory. You can usethis to avoid sending the collection type with Hessian.</p><example title="web.xml"><servlet servlet-name="my-service" servlet-class="qa.MyService"> <init> <serializer-factory> <send-collection-type>false<send-collection-type> </serializer-factory> </init></servlet></example><example title="web.xml"><servlet servlet-name="my-service" servlet-class="qa.MyService"> <init> <send-collection-type>false<send-collection-type> </init></servlet></example></s1><s1 title="Filter url-pattern with include/exclude"><p>The filter-mapping can now accept more sophisticated matches,allowing filters to exclude URLs.</p><example><filter-mapping filter-name="gzip"> <url-pattern> <exclude-regexp>\.(pdf,mov)</exclude-regexp> </url-pattern></filter-mapping></example></s1><s1 title="JSSE has alias"><p>JSSE now has an <alias> tag to select the alias from the keystore.</p></s1><s1 title="JspCompiler"><p>com.caucho.jsp.JspCompiler can now accept a -conf argument, whichpoints to a web-app configuration.</p><example title="compile-app.xml"><web-app xmlns="http://caucho.com/ns/resin"> <document-directory>/opt/www/foo</document-directory> <resin:import path="/opt/resin/conf/app-default.xml"/></web-app></example><example title="command line">unix> java com.caucho.jsp.JspCompiler -conf /opt/resin/compile-app.xml" test/foo.jsp</example></s1><s1 title="jsp tld-file-set"><p>The preloaded tlds can now be configured with the <tld-file-set>tag. By default all tlds in WEB-INF are loaded. In some cases wherethe WEB-INF contains many files, this is inappropriate.</p><example title="web-xml"><web-app xmlns="http://caucho.com/ns/resin"> <jsp> <tld-file-set dir="WEB-INF"> <include name="tld/**/*.tld"/> </tld-file-set> </jsp></web-app></example></s1></body></document>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -