最近在做一个实现定时刷新表格的组件,
使用的是tacos的tapestry组件实现Ajax+Tapestry 我是用的是tacos的AjaxAutoInvoker定时(3秒)去触发AjaxEventSubmit动作,在AjaxEventSubmit动作中去不断更新table组件。 但是使用过程中的问题是,在我的环境(Eclipse3.2+MyEclipse5+Tomcat5.5+JDK1.5.0_10)中,
当刷新启动一段时间后,很快,Tomcat服务器就会出现内存溢出而挂掉,不知道是什么原因,
如果刷新时间设置得更短,挂得更快!!换过JDK版本和更换为Resin服务器都不行。
希望各位能指点,好让我早日走出迷途,为谢!!!
页面代码如下: <form jwcid="@AjaxForm">
<span jwcid="countryChangeEvent@tacos:AjaxEventSubmit"
updateComponents="ognl:{'table'}" effects="template:{highlight:{any:'[255,255,184], 500, 500'}}" /> <span jwcid="@tacos:AjaxAutoInvoker"
target="countryChangeEvent"
intervalMilliseconds="3000"/> <table jwcid="table@tacos:Table"
effects="template:{highlight:{any:'[255,255,184], 500, 500'}}"
source="ognl:items"
columns="country:Code:country,
displayCountry:Name:displayCountry,
displayLanguage:Language:displayLanguage">
</table> </form>
改单独启动服务器的方式就不会有这样的问题。在Eclipse里,web服务器默认是依附在eclipse所在的进程上执行的(web服务器以进程内方式启动),单独运行服务器时,会单独启动进程来执行。
[email protected]