论坛首页 Java企业应用论坛

[2007-01-21 18时发布]ecside 1.0rc1: 列表组件eXtremeComponents全面增强版

浏览 157267 次
该帖已经被评为精华帖
作者 正文
   发表时间:2007-01-03  
fins:
   新年好!
   我尝试了你的更新版本,自己依据情况做了数据库分页面操作,但是我发现有个奇怪的问题出现:
   我数据库里面是12条记录。
   默认每页显示10条的情况下,不能正常翻页到第二页
   默认每页显示11条的情况下,能正常翻页了,但是第二页缺少一条,通过界面我选择显示20条,也仅仅给我显示11条记录。
   而且排序不管以多少行显示,都没有按照数据库排序。
   不知问题出自那里。

我查看了下我的代码,区别在于我没有按照rowStart和rowEnd方式取数据的那样设置取数据的,以下是我ACTION代码

		Context context = new HttpServletRequestContext(request);
		LimitFactory limitFactory = new TableLimitFactory(context);
		Limit limit = new TableLimit(limitFactory);

		int beginPage=limit.getPage();
		int pageSize=limit.getCurrentRowsDisplayed();
		if(beginPage<=0){
			beginPage=0;
		}
		if(pageSize<=0){
			pageSize=11;
		}

		String query ="from Apply";
		
		QueryListObj queryListObj = applyFacade.getQueryListForEcside(query, limit.getSort(), limit.getFilterSet(), beginPage, pageSize);
		//取到总数
		int totalRows = queryListObj.getCount();
		limit.setRowAttributes(totalRows, pageSize);
		
                //取到集合
		Collection applys = queryListObj.getElemList();
		
		request.setAttribute("applys", applys);
		request.setAttribute("totalRows", new Integer(totalRows));		

		// 记录操作日志־
		saveLog("applyer", "查询申请列表");
		return mapping.findForward("listForEcside");

0 请登录后投票
   发表时间:2007-01-03  
提供一个反馈。

工具条翻页组件里面有中文字符,在UTF-8环境下会乱码,建议把中文字符提出放在外部文件中。

汗了。。不少代码都是是GBK...

苦了我这个用UTF-8的。。我已经开始改进I18N的相关代码了。。。
0 请登录后投票
   发表时间:2007-01-03  
boin 写道
提供一个反馈。

工具条翻页组件里面有中文字符,在UTF-8环境下会乱码,建议把中文字符提出放在外部文件中。

汗了。。ECSideFilter 也是GBK...

苦了我这个用UTF-8的。。我已经开始改进I18N的相关代码了。。。
谢谢 已经更正,但未上传!!!

顺便又修改了两个小bug

明天一起更新 

再次感谢!!!
0 请登录后投票
   发表时间:2007-01-03  
楼主,你太强了。我要赞美你!!!
提个问题,我在demo1.jsp中加入filterable="true"
想用这种方式来filter,例如  ‘%王%’,但好像还不支持这种模糊条件.
0 请登录后投票
   发表时间:2007-01-03  
我刚才又查找了下原因,发现是取不到当前显示的页面数据条数

也就是int pageSize=limit.getCurrentRowsDisplayed();取到的总是0

取到当前页面的数据显示条数不是这个方法吗?
0 请登录后投票
   发表时间:2007-01-03  
to hql_lims:

我不知道 applyFacade.getQueryListForEcside()你具体是怎么写的
能否提供一下代码?

还有 关于排序
建议你看一下面的参数设置
table.sortRowsCallback.default=org.extremecomponents.table.callback.ProcessRowsCallback
table.sortRowsCallback.limit=org.extremecomponents.table.callback.LimitCallback

因为 排序 过滤 分页 都有属于自己的callback类 不是分页设置了limit其他的就会自动也是limit的 你应该自己设置一下 然后还要在action里自己再写些东西才行
我们不使用排序 和过滤 所以对这两个部分我没有修改
你可以看一下官方的wiki(有中文的)
0 请登录后投票
   发表时间:2007-01-03  
另外,我改了这样一行代码
president.put("term", "178917973443563563436432");

导出在xls文件中显示为1.78917973443564E+23,能有什么办法解决这个问题使它在xls中原样显示吗?

谢谢你,新年快乐,为你的劳动喝彩。
0 请登录后投票
   发表时间:2007-01-03  
hql_lims 写道
我刚才又查找了下原因,发现是取不到当前显示的页面数据条数

也就是int pageSize=limit.getCurrentRowsDisplayed();取到的总是0

取到当前页面的数据显示条数不是这个方法吗?


你页面内设置 rowDisplayed="11" 了吗?
0 请登录后投票
   发表时间:2007-01-03  
boin 写道
提供一个反馈。

工具条翻页组件里面有中文字符,在UTF-8环境下会乱码,建议把中文字符提出放在外部文件中。

汗了。。不少代码都是是GBK...

苦了我这个用UTF-8的。。我已经开始改进I18N的相关代码了。。。


关于过滤器:

那个过滤器的编码是可以设置的 在 web.xml里设置
只是如果不设置那么默认就是gbk


其他还有哪些地方是? 发现的话麻烦告诉我一下 我好改
当初写的时候确实比较懒 毕竟项目要用 挺急的 结果...
见笑了 大家多包含
0 请登录后投票
   发表时间:2007-01-03  
sybase 写道
另外,我改了这样一行代码
president.put("term", "178917973443563563436432");

导出在xls文件中显示为1.78917973443564E+23,能有什么办法解决这个问题使它在xls中原样显示吗?

谢谢你,新年快乐,为你的劳动喝彩。


呵呵 不客气

先说第一个 关于模糊过滤的
ectabel原版在设计的时候 并没有打算把过滤做成一个功能强劲的检索 所以不支持模糊或者条件查询
如果想支持模糊查询也是可以的 但是速度会很慢


第2个 你给相应的column加上 escapeAutoFormat="true" 看看

0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics