我现在在用jsf进行编码,用的是dataTable和dataScoller进行分页,让后者根据前者的id取数据,然后自动进行分页,而dataTable是从后台接口中取数据,我设置断点,查看了一下,发现数据全部取到了共23条,并且页面也显示了10条数据和分页的1、2、3页,但是我一点击页面的1、2、3也的任何一个,都会出现数据全部消失不显示,我想知道是怎么回事啊,拜托帮忙解决一下吧,谢谢了
[b]问题补充:[/b]
关键我截得图不能贴啊,是贴代码么?太多代码了,联系很广,不好贴,大家给点建议就好,贴代码太繁琐,谢谢了
[b]问题补充:[/b]
关键是dataScoller自己取分页数据,当时这个类是另一个同事写的,我自己也没弄清楚,只是知道将值全部取出他会自己分页显示,现在那个同事离职,我刚学,看不懂代码,只是取出所有值让他自己分页,我和前面的对照过了,都一样啊,就是点分页数据就全部不见了,挺郁闷的,不过谢谢你了
[quote]全部取出他会自己分页显示[/quote]
晕了,要是有十万条数据也会全部拿到内存中把内存撑爆??
既然不方便把代码贴出来,那你就跟系统中别的页面中的分页做对比吧,主要看看faces-config.xml中的bean的配置信息,页面中dataScoller标签设置是否正确,是否和dataTable对应正确了,dataTable的值绑定是否正确等,细细看一下吧
把对应的backingBean贴上来
既然没法儿贴代码我就猜一下,因为你的backingBean的Scope是request范围的,也就是说你页面加载一次虽然23条数据都OK了,但是在页面显示到客户端后你的backingBean就销毁了,如果你的backingBean真是request的,建议你在提取数据的方法中设置断点,看看点第二页,第三页的时候是否新建的backingbean都会调用这个方法