`
王牌海盗
  • 浏览: 239187 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在纯struts下使用ECSide的一点疑惑

阅读更多

知道ECSide有段时间了,但一直都没尝试使用。最近在尝试使用,但发现一个很不解的疑问。在用ECSide进行翻页,排序等操作试,action会被多次执行。action里调用DAO从取LIST的方法也被执行。这样每操作一次(翻页,或排序等),action就被执行一次,List也被从新取了一次,导致响应很慢。

JSP里的代码

xml 代码
  1. <link rel="stylesheet" type="text/css" href="<%=webapp%>/ecside/css/ecside_style.css" />  
  2. <script type="text/javascript" src="<%=webapp%>/ecside/js/prototype_mini.js" ></script>  
  3. <script type="text/javascript" src="<%=webapp%>/ecside/js/ecside_msg_utf8_cn.js"></script>  
  4. <script type="text/javascript" src="<%=webapp%>/ecside/js/ecside.js" ></script>  
  5. </head>  
  6. <body>  
  7.  <ec:table items="users" var="user" retrieveRowsCallback="process"  
  8.      sortable="true" action="${pageContext.request.contextPath}/ShowUserList.do"  
  9.     rowsDisplayed="5" title="任务信息" width="80%" pageSizeList="2,5,10,50">  
  10.   <ec:row>  
  11.    <ec:column width="20" property="_0" title="序号" value="${GLOBALROWCOUNT}"/>  
  12.    <ec:column width="150" property="userid" title="用户ID" />  
  13.    <ec:column width="150" property="realname" title="用户姓名"/>  
  14.    <ec:column width="150" property="dwid" title="单位ID"/>               
  15.    </ec:row>  
  16.   </ec:table>  

(我试着将ec:table 里的action属性设为显示该列表的JSP页面“userlist.jsp”,这样的话第一次打开页面是正常的,一但对列表经行任何错作,翻页,排序等,列表就变空了,右下脚纪录信息栏显示无任何纪录)

action里的主要代码

java 代码
  1. public ActionForward ShowUserkList(ActionMapping mapping, ActionForm form,   
  2.     HttpServletRequest request, HttpServletResponse response) {   
  3.     List userlist = new UserDAO().findAllUser();   
  4.     request.setAttribute("users", userlist);   
  5.     return mapping.findForward("success");   
  6. }  

 

不知道大家出现这种问题没?如何解决的????

分享到:
评论
9 楼 flysky9820000 2008-03-20  
keanfly说的问题也是数据库分页时使用的,ecside2.0rc1这个版本支持预查询功能;也就是说数据库里本来只查询当前显示的页面(如当前显示第2页就只查第2页的内容),但在ecside里是把前后2页也查出来的(如查第2页时就会把第1和第3页也查出来)。doPreload=“false”的意思就是关闭这个预查询功能,action="${pageContext.request.contextPath}/ShowUserList.do"这样写还是会进入action的。fina的博客里有这个版本的文档,可以看看就知道了。
8 楼 flysky9820000 2008-03-20  
呵呵,海盗兄,你把action="${pageContext.request.contextPath}/ShowUserList.do"这句改成
action=""
你在struts里是一次查出所有记录的,这样改后ecside就知道自己从缓存读数据了;
你上面的情况是用于数据库物理分页时使用的;
7 楼 keanfly 2008-03-06  
Attribute doPreload invalid for tag table according to TLD
我用doPreload为何出现上面这种错误呢?
在<ec:table>中使用doPreload="false"
6 楼 JaNer 2007-10-31  
我也遇到这问题了,doPreload=“false”确实没起到作用!不知如何解决啊?
5 楼 王牌海盗 2007-10-26  
郁闷啊。我把doPreload=“false”关了怎么还是不行啊
4 楼 lijun96 2007-10-26  
感谢楼主,我也遇到这样的问题,把预读关了就好了。我们项目里现在在大量使用ecside,不知道在websphere上会不会有什么问题?
3 楼 王牌海盗 2007-10-26  
把doPreload=“false”?
中午回去试一试。
2 楼 lxxing 2007-10-26  
将预读功能关闭就不会了
1 楼 王牌海盗 2007-10-26  
忘了说了,使用的是ecside_2.0_RC1这个版本。

相关推荐

    ecside+struts2+spring2.5+hibernate3.2

    本资料主要关注的是一个经典的Java Web开发技术栈,即ecSide、Struts2、Spring 2.5和Hibernate 3.2,以及与之配合使用的MySQL数据库。下面将详细阐述这些技术及其相互间的整合。 **ecSide** 是一个基于Spring的轻量...

    struts taglib使用示例

    struts taglib使用示例 struts taglib使用示例 struts taglib使用示例struts taglib使用示例 struts taglib使用示例

    struts2标签使用方法

    在使用 Struts2 标签前,需要在 JSP 页面引入标签库,并在 web.xml 中声明要使用的标签。 property 标签 property 标签用于输出指定的值,例如输出用户的名称、年龄等信息。property 标签可以访问某一个包的类的...

    纯struts带标签

    "纯Struts带标签"指的是在开发过程中仅使用Struts框架,并利用其提供的JSP标签库进行视图层的构建,以提高开发效率和代码可读性。下面将详细介绍Struts框架的核心概念以及它的标签库。 1. **Struts框架基础** - **...

    纯Struts2环境搭建

    在这个例子中,`struts.enable.DynamicMethodInvocation`设置为`false`意味着不启用动态方法调用,`struts.devMode`设置为`false`表示不在开发模式下运行,以提高性能。 6. **创建Action类**:在对应的包`...

    纯struts分页小例子

    在这个“纯struts分页小例子”中,我们将探讨如何在Struts框架下实现分页功能,这在处理大量数据展示时非常常见。 分页功能能够有效地提高用户体验,避免一次性加载过多数据导致页面响应慢或内存压力大。在Struts...

    struts2 使用范例

    在“struts2 使用范例”中,我们将深入探讨如何使用Java和Struts2框架进行实际的开发工作。 首先,我们需要了解Struts2的基础架构。Struts2的核心是Action类,它是业务逻辑处理的中心。Action类负责接收来自客户端...

    Struts2初步使用总结

    在探讨为何使用Struts2之前,我们先简要回顾一下Struts2的一些基本特点: - **模块化设计**:Struts2采用模块化的架构设计,使得各个组件易于替换和扩展。 - **支持多种视图技术**:不仅限于JSP,还支持Velocity、...

    struts2使用手册

    在项目的`src`目录下新建一个名为`struts.xml`的文件,并添加基本的配置信息。 ```xml &lt;!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" ...

    纯struts2开发带log4j的用户登录demo

    在本示例中,"纯struts2开发带log4j的用户登录demo"是教你如何利用Struts2框架来实现一个简单的用户登录功能,并结合log4j进行日志记录。Log4j是一个广泛使用的日志记录工具,它提供了灵活的日志配置,有助于调试、...

    struts2 使用注解现在零配置不需要在使用struts.xml配置文件,可以直接跑

    如果这是一个类文件,那么它应该包含了类似上述示例的注解用法,用于演示如何在没有`struts.xml`配置文件的情况下运行Struts2应用。 总的来说,Struts2的注解功能极大地简化了Web应用的配置,使开发者能够更加专注...

    struts2和struts1 API及使用指南 chm

    Struts是Apache软件基金会下的一个开源项目,主要提供MVC(Model-View-Controller)架构模式,用于构建Java EE(Enterprise Edition)Web应用程序。Struts2是Struts1的升级版,它在Struts1的基础上引入了许多改进...

    struts1和struts2的区别

    ### Struts1与Struts2的主要区别 #### 概述 Apache Struts 是一个用于构建企业级Java Web...尽管如此,在某些特定的应用场景下,Struts1可能仍然有其适用之处。选择合适的框架取决于项目的具体需求和技术团队的偏好。

    Maven,Struts2详细使用例子

    在这个"Maven,Struts2详细使用例子"中,我们将探讨这两个工具的集成与使用。 首先,Maven是一个项目管理和依赖管理工具,它通过一个配置文件pom.xml来管理项目的构建、报告和依赖关系。在Struts2项目中,Maven可以...

    Struts2与Struts1区别

    - Struts1 使用 JSTL 的 EL(Expression Language),而 Struts2 引入了自己的 OGNL(Object-Graph Navigation Language),提供了更强大的数据访问和操作能力,允许在视图层更自由地访问和操作模型数据。...

    ecside+struts2+spring2.5+hibernate3.2部分源代码

    标题 "ecside+struts2+spring2.5+hibernate3.2部分源代码" 描述了一个基于四个核心技术的项目,它们分别是ECSide、Struts2、Spring 2.5 和 Hibernate 3.2。这些技术是Java开发中的重要组件,尤其在构建企业级应用时...

    struts标签库使用大典

    在JSP页面中使用Struts标签之前,需要在页面头部引入Struts的TLD(Tag Library Descriptor)文件: ```jsp ``` 这里的`prefix`是标签前缀,`uri`是TLD文件的路径。 4. **Struts标签库示例** - 使用`...

    struts2初始使用环境配置

    在开始使用Struts2之前,我们需要先进行环境配置。以下将详细介绍Struts2的初始使用环境配置步骤。 首先,确保你已经安装了Java Development Kit (JDK)。JDK是开发Java应用的基础,你需要至少JDK 1.6或以上版本来...

Global site tag (gtag.js) - Google Analytics