`
may_cauc
  • 浏览: 43784 次
社区版块
存档分类
最新评论

jsf 中的datatable 和 dataScroller 用法

阅读更多
最近学习jsf ,适用的是myfaces控件库,但是在用datascroller的时候遇到一个问题,基本上无法分页,十分郁闷。点击下一页的时候就告诉你网页有错误,根本没法应。后来发现竟然要在web.xml中配置相关内容。
首先看一下datatable和datascroller的sample。

<body>
<f:view>
    <h:form>

            <t:dataTable value="#{scrollerList.list}" var="varIter" id="data"
                rows="10">
                <%-- nitrox:varType="com.liang.SimpleCar" --%>
                <h:column>
                    <f:facet name="header">
                        <h:outputText value="Id" />
                    </f:facet>
                    <h:outputText value="#{varIter.id}" />
                </h:column>
                <h:column>
                    <f:facet name="header">
                        <h:outputText value="Color" />
                    </f:facet>
                    <h:outputText value="#{varIter.color}" />
                </h:column>
                <h:column>
                    <f:facet name="header">
                        <h:outputText value="Type" />
                    </f:facet>
                    <h:outputText value="#{varIter.type}" />
                </h:column>
            </t:dataTable>
            <f:verbatim>
                <br />
            </f:verbatim>
        <t:dataScroller for="data" paginator="true" paginatorMaxPages="6">
            <f:facet name="first">
                <h:graphicImage url="/images/arrow-first.gif"/>
            </f:facet>
            <f:facet name="previous">
                <h:graphicImage url="/images/arrow-previous.gif"/>
            </f:facet>
            <f:facet name="next">
                <h:graphicImage url="/images/arrow-next.gif"/>
            </f:facet>
            <f:facet name="last">
                <h:graphicImage url="/images/arrow-last.gif"/>
            </f:facet>
            <f:facet name="fastforward">
                <h:graphicImage url="/images/arrow-ff.gif"/>
            </f:facet>
            <f:facet name="fastrewind">
                <h:graphicImage url="/images/arrow-fr.gif"/>
            </f:facet>
        </t:dataScroller>
            </h:form>
</f:view>

</body>

</html>
 

然后在web.xml中加入能上传文件的filter:

    <filter>
        <filter-name>extensionsFilter</filter-name>
        <filter-class>
            org.apache.myfaces.webapp.filter.ExtensionsFilter
        </filter-class>
        <init-param>
            <param-name>maxFileSize</param-name>
            <param-value>20m</param-value>
            <description>
                Set the size limit for uploaded files. Format: 10 - 10
                bytes 10k - 10 KB 10m - 10 MB 1g - 1 GB
            </description>
        </init-param>
        <init-param>
            <param-name>uploadThresholdSize</param-name>
            <param-value>100k</param-value>
        </init-param>
    </filter>
   
    <filter-mapping>
        <filter-name>extensionsFilter</filter-name>
        <servlet-name>faces</servlet-name>
    </filter-mapping>
    <!-- extension mapping for serving page-independent resources (javascript, stylesheets, images, etc.)  -->
    <filter-mapping>
        <filter-name>extensionsFilter</filter-name>
        <url-pattern>/faces/*</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>extensionsFilter</filter-name>
        <url-pattern>*.jsf</url-pattern>
    </filter-mapping>
    <filter-mapping>
        <filter-name>extensionsFilter</filter-name>
        <url-pattern>*.jsp</url-pattern>
    </filter-mapping>


这就可以了,如果web.xml中没有上述内容,datascroller则无法使用。
具体为什么,明天再思考。呵呵

分享到:
评论
1 楼 liang8113 2008-11-19  
这个想好了没有啊,我的分页也是不能实现啊,就是能出现第一页数据,但是点第二页或者其他页数据的时候,所有数据就都消失了,我想知道怎么解决啊,我理解的是没有将startRow也就是开始位置的值赋上,但是dataScoller怎么给startRow赋值的我弄不清楚啊,就是点击页号它在那里给startRow赋值的啊

相关推荐

    jsf 分页

    在这些方法中,你需要根据当前页和每页大小计算出新的起始位置,然后从数据库或其他数据源获取相应范围的数据: ```java @ManagedBean @ViewScoped public class Bean { private List&lt;DataItem&gt; dataList; ...

    JSF分页组件

    - **集成到JSF生命周期**: 使用JSF的生命周期方法(如`@PostConstruct`、`processAction`等)确保组件与JSF请求处理流程同步。 - **定义属性和事件**: 定义用于存储当前页数、每页显示记录数等属性,并提供事件监听...

    JSF分页组件2

    本文将深入探讨JSF分页组件2的相关知识点,包括其原理、使用方法和最佳实践。 ### 1. 分页组件的基本概念 分页组件允许用户以有限的数量逐页查看数据,而不是一次性加载所有数据,这对于提高用户体验和减轻服务器...

    CDI , JSF2.0 项目兼容性问题总结

    需要显式地在`setUserLocale`方法中设置locale,如:`context.getViewRoot().setLocale(locale)`。 以上这些问题和解决方案都是在实践中积累的经验,对于CDI+JSF2.0项目在WebSphere 8.5环境下的部署和运行至关重要...

    用jsf实现的相册管理

    在本项目中,我们将深入探讨如何使用JSF和RichFaces来实现一个相册管理系统。 首先,我们需要理解JSF的基本工作原理。JSF是一个MVC(Model-View-Controller)框架,它将用户界面与业务逻辑和数据模型分离。模型层...

    primefaces_user_guide_6_0.pdf

    此外,文档中还涵盖了DataExporter、DataGrid、DataList、DataScroller、DataTable、Diagram、Dialog、Drag&Drop、Editor、Effect、FeedReader、Fieldset、FileDownload、FileUpload、Focus、Fragment、Galleria、...

    richfaces中的datagrid显示数据

    通过使用RichFaces的`rich:dataTable`和`rich:datascroller`组件,我们可以轻松地在Web应用中实现数据的展示和分页功能。同时,结合后端的`DataPage`和`PagedListDataModel`类,可以更高效地处理大量数据,提升应用...

    richfaces组件说明文档及使用实例

    本文档将详细介绍RichFaces的主要组件及其用法,并通过实际例子来演示如何在项目中集成和使用这些组件。 1. **组件库**: RichFaces的组件库包括但不限于表格(Table)、面板(Panel)、对话框(Dialog)、菜单...

    MyFaces Oracle大数据表分页封装.docx

    接下来,`PagedListDataModel`是JSF的`DataModel`的一个特殊实现,用于在不一次性加载所有数据的情况下,让`DataTable`和`DataScroller`组件能够遍历大数据集。当用户滚动或翻页时,`PagedListDataModel`会动态地...

    PrimeFaces中文教程

    PrimeFaces中文教程详细地向开发者介绍了PrimeFaces的安装和配置,以及各种组件的使用方法和示例,使开发者能够快速掌握并使用PrimeFaces开发高效、美观的Web应用。 首先,教程会介绍PrimeFaces的基本概念和安装...

    Richface实现服务器端分页Demo

    3. **配置JSF页面**:在JSF页面中,使用`rich:datascroller`和`rich:extendedDataTable`组合实现分页。`rich:datascroller`将负责导航,而`rich:extendedDataTable`则展示数据。 ```xml 姓名 #{employee.name}...

    richfaces参考文档

    2. **组件库**:包括各种富组件,如数据表(DataTable)、下拉树(TreeSelect)、滑块(Slider)和时间选择器(TimePicker)等,这些组件可轻松集成到JSF应用中,提供丰富的用户界面。 3. **事件处理**:提供了一种...

Global site tag (gtag.js) - Google Analytics