知道ECSide有段时间了,但一直都没尝试使用。最近在尝试使用,但发现一个很不解的疑问。在用ECSide进行翻页,排序等操作试,action会被多次执行。action里调用DAO从取LIST的方法也被执行。这样每操作一次(翻页,或排序等),action就被执行一次,List也被从新取了一次,导致响应很慢。
JSP里的代码
xml 代码
- <link rel="stylesheet" type="text/css" href="<%=webapp%>/ecside/css/ecside_style.css" />
- <script type="text/javascript" src="<%=webapp%>/ecside/js/prototype_mini.js" ></script>
- <script type="text/javascript" src="<%=webapp%>/ecside/js/ecside_msg_utf8_cn.js"></script>
- <script type="text/javascript" src="<%=webapp%>/ecside/js/ecside.js" ></script>
- </head>
- <body>
- <ec:table items="users" var="user" retrieveRowsCallback="process"
- sortable="true" action="${pageContext.request.contextPath}/ShowUserList.do"
- rowsDisplayed="5" title="任务信息" width="80%" pageSizeList="2,5,10,50">
- <ec:row>
- <ec:column width="20" property="_0" title="序号" value="${GLOBALROWCOUNT}"/>
- <ec:column width="150" property="userid" title="用户ID" />
- <ec:column width="150" property="realname" title="用户姓名"/>
- <ec:column width="150" property="dwid" title="单位ID"/>
- </ec:row>
- </ec:table>
(我试着将ec:table 里的action属性设为显示该列表的JSP页面“userlist.jsp”,这样的话第一次打开页面是正常的,一但对列表经行任何错作,翻页,排序等,列表就变空了,右下脚纪录信息栏显示无任何纪录)
action里的主要代码
java 代码
- public ActionForward ShowUserkList(ActionMapping mapping, ActionForm form,
- HttpServletRequest request, HttpServletResponse response) {
- List userlist = new UserDAO().findAllUser();
- request.setAttribute("users", userlist);
- return mapping.findForward("success");
- }
不知道大家出现这种问题没?如何解决的????