CSDN博客

img richardxie

TOMCAT 4.1 中使用自定义标签不能正常调用release()方法的解决

发表于2004/10/26 22:26:00  1069人阅读

分类: Java

公司使用的自定义标签 <rowsbean:if>标签在Tomcat4.1上的使用出现错误的问题已经解决。
 tomcat4.1安装目录/conf/web.xml (全局参数);加入enablePooling参数,设置为false,不缓存自定义标签。
===========================================
<servlet>
<servlet-name>jsp</servlet-name>         <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
 
 <!--begin加入,请加为第一个参数-->
<init-param>
   <param-name>enablePooling</param-name>
   <param-value>false</param-value>
</init-param>
 <!--end加入-->
 
<init-param>
     <param-name>fork</param-name>
     <param-value>false</param-value>
</init-param>   
</servlet>
===========================================
 tomcat4.1的开发者认为,tag的release()方法不是java规范中必须实现的方法,仅在GC前调用。tomcat4.1默认开启了标签缓冲池(tag-pooling),因此执行完一次<rowsbean:if>标签之后,没有执行release()方法(websphere会)。关闭这个估计会影响tomcat处理jsp的性能!!4.0和4.1版本的重大区别之一就是这个特征!
 同样适用于tomcat 5。

相关信息http://nagoya.apache.org/bugzilla/show_bug.cgi?id=16001
阅读全文
0 0

相关文章推荐

img
取 消
img