J.B*_*.B. 3 datatable jsf primefaces
我想用数据导出器打印一份简单的报告,但我打印的是结构而不是数据,任何格式(xsl、csv、pdf)都有同样的问题。我得到的行数和名称列是正确的,除了表中的数据。
\n\n浏览器抛出此警告:\n资源解释为文档,但使用 MIME 类型 text/csv 传输:“ http://localhost:8081/prueba2/faces/views/usrManagement.xhtml ”。
\n\n这是我的代码:
\n\n<p:dataTable id="userTable" \n value="#{userManagementBean.lazyModel}"\n var="user" emptyMessage="No se encontraron registros"\n tableStyle="table-layout:auto;" reflow="true"\n paginator="true" rows="5" lazy="true"\n paginatorTemplate="{RowsPerPageDropdown}{FirstPageLink}\n {PreviousPageLink}{PageLinks}\n {NextPageLink}{LastPageLink}"> \n\n <f:facet name="header">\n Usuarios\n </f:facet>\n <p:column exportable="false">\n <f:facet name="header">Acciones</f:facet>\n\n <p:commandLink class="btn-floating\n waves-effect waves-light blue"\n action="#{userManagementBean.chosenUsr(user)}"\n onsuccess="$(\'#CRUDModal\').modal(\'open\');"\n update="modalForm"><i class="fa fa-edit"></i> \n </p:commandLink> \n </p:column>\n <p:column>\n <f:facet name="header">Clave de usuario</f:facet>\n #{user.aliasVarc}\n </p:column>\n\n <p:column>\n <f:facet name="header">N\xc3\xbamero de empleado</f:facet>\n #{user.codEmployeeInt}\n </p:column>\n\n <p:column>\n <f:facet name="header">Nombre</f:facet>\n #{user.nameVarc}\n </p:column>\n\n <p:column>\n <f:facet name="header">A paterno</f:facet>\n #{user.lastNameVarc}\n </p:column>\n <p:column>\n <f:facet name="header">Activo</f:facet> \n <h:selectBooleanCheckbox value="#{user.isActiveBit}" />\n <label></label>\n\n </p:column>\n\n</p:dataTable>\n</div>\n</div>\n<div class="row"></div>\n\n</div>\n</div>\n</div>\n<div class="row" style="margin-bottom: -1px;">\n<div class="fixed-action-btn ">\n<a class="btn-floating btn-large amber accent-3">\n <i class="fa fa-ellipsis-h"></i>\n</a>\n<ul>\n <li><a class="btn-floating blue lighten-3"><i class="fa fa-file-text-o">\n</i></a></li>\n <li><a class="btn-floating red darken-1"><i class="fa fa-file-pdf-o"></i>\n</a></li>\n\n<li>\n <h:commandLink class="btn-floating green darken-3">\n <p:dataExporter type="pdf" target="userTable" fileName="reporte" \n pageOnly="false" />\n <i class="fa fa-file-excel-o">\n </i></h:commandLink>\n </li>\n\n <li><p:commandLink class="btn-floating blue waves-effect waves-light"\n action="#{userManagementBean.newUser()}"\n onsuccess="$(\'#CRUDModal\').modal(\'open\');"\n update="modalForm">\n <i class="fa fa-plus"></i>\n </p:commandLink></li>\n\n</ul>\n</div> \n</div> \n
Run Code Online (Sandbox Code Playgroud)\n\n\n\n这是托管 bean:
\n\n@ManagedBean\n@ViewScoped\npublic class UserManagementBean implements Serializable{\nstatic final long serialVersionUID = 1L;\n\nprivate String userName;\nprivate List<Usrs> liUsrs;\nprivate Usrs selectedUsr;\nprivate boolean deleteBtnRendered;\nprivate LazyDataModel<Usrs> lazyModel;\nprivate HashMap<String,Object> params;\nprivate int paginator;\n\n\n\n\n@PostConstruct\npublic void initMethod() {\n\n selectedUsr = new Usrs();\n}\n\npublic String getUserName() {\n return userName;\n}\n\npublic void setUserName(String userName) {\n this.userName = userName;\n}\n\npublic List<Usrs> getLiUsrs() {\n return liUsrs;\n}\n\npublic void setLiUsrs(List<Usrs> liUsrs) {\n this.liUsrs = liUsrs;\n}\n\npublic Usrs getSelectedUsr() {\n return selectedUsr;\n}\n\npublic void setSelectedUsr(Usrs selectedUsr) {\n this.selectedUsr = selectedUsr;\n System.out.println("alias"+selectedUsr.getAliasVarc());\n}\n\npublic boolean isDeleteBtnRendered() {\n return deleteBtnRendered;\n}\n\npublic void setDeleteBtnRendered(boolean deleteBtnRendered) {\n this.deleteBtnRendered = deleteBtnRendered;\n}\n\npublic LazyDataModel<Usrs> getLazyModel() {\n\n return lazyModel;\n}\n\npublic int getPaginator() {\n return paginator;\n}\n\npublic void setPaginator(int paginator) {\n this.paginator = paginator;\n}\n\npublic void chosenUsr(Usrs selected){\n selectedUsr = selected;\n deleteBtnRendered = true;\n}\n\npublic void callSearchProcess(){\n params = new HashMap<>();\n params.put("aliasVarc", userName);\n\n DataTable dataTable = (DataTable) FacesContext.getCurrentInstance().\n getViewRoot().\n findComponent("searchForm:userTable");\n dataTable.reset(); \n lazyModel = new LazyUserList(params);\n}\n\npublic void callInUpProcess(){\n new UserManagementController(this).mergeUser();\n selectedUsr = new Usrs();\n}\npublic void callDeleteProcess(){\n new UserManagementController(this).deleteUser();\n selectedUsr = new Usrs();\n}\npublic void newUser(){\n selectedUsr = new Usrs();\n deleteBtnRendered = false;\n}\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n\n\n[csv 格式][2]
\nPF dataexporter 只知道如何导出简单的“数据”。它不是 html 导出器。所以这<label>
不起作用是“设计使然”。对于其他 EL,您需要像这样使用它们:
<h:outputText value=" #{user.lastNameVarc}" />
Run Code Online (Sandbox Code Playgroud)
那么它肯定会起作用
归档时间: |
|
查看次数: |
957 次 |
最近记录: |