我试图在我的primefaces数据表设置中实现延迟加载.目前,这没有延迟加载实现,但在实现延迟加载后,我在数据表中没有数据.但是,我可以在我的LoadData方法中打印我的列表以验证数据是否已加载到我的列表中,但是一旦我的LazyModel被返回并且尝试了数据表加载,似乎就会出现问题.这可能只是我忽略的一些简单.任何帮助是极大的赞赏!
这是我的ScreenshotListProducer类代码:
@ManagedBean
@RequestScoped
public class ScreenshotListProducer implements Serializable {
private static final long serialVersionUID = 1L;
@Inject
private EntityManager em;
private List<Screenshot> screenshots;
private LazyDataModel<Screenshot> lazyModel = null;
private int pageSize = 5;
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getPageSize() {
return pageSize;
}
@Produces
@Named
public List<Screenshot> getScreenshots() {
System.out.println("************* getting screenshots list **************");
return screenshots;
}
@PostConstruct
public void LoadData() {
lazyModel = new LazyDataModel<Screenshot>() {
private static final long serialVersionUID = …Run Code Online (Sandbox Code Playgroud) 目前,我正在使用具有排序/过滤功能的数据表从我的数据库成功显示图像元数据.在我的数据表下面,我使用第三方图像封面流程(http://www.jacksasylum.eu/ContentFlow/)成功显示我的图像.我正在使用相同的列表来显示这两个.在我的数据表中过滤数据后,我需要使用过滤的数据表结果动态更新我的coverflow中的图像列表.
使用PrimeFaces的最佳方法是什么?有人能够指出我的工作实例吗?
这是我的代码:
screenshotData.xhtml
<h:form>
<p:dataTable var="scrshot" value="#{screenshots}" paginator="true" rows="8"
paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
rowsPerPageTemplate="5,10,15" widgetVar="dataTable" draggableColumns="true"
emptyMessage="No screenshot data found with given criteria">
<f:facet name="header">
<p:outputPanel>
<h:outputText value="Search all fields:"/>
<p:inputText id="globalFilter" onkeyup="dataTable.filter()" style="width:150px" />
</p:outputPanel>
</f:facet>
<p:column headerText="Time" sortBy="#{scrshot.time}" filterBy="#{scrshot.time}" filterMatchMode="startsWith">
<h:outputText value="#{scrshot.time}" />
</p:column>
<p:column headerText="Id" sortBy="#{scrshot.id}" filterBy="#{scrshot.id}" filterMatchMode="startsWith">
<h:outputText value="#{scrshot.id}" />
</p:column>
<p:column headerText="User" sortBy="#{scrshot.user}" filterBy="#{scrshot.user}" filterMatchMode="startsWith">
<h:outputText value="#{scrshot.user}" />
</p:column>
</p:dataTable>
</h:form>
<br/>
<h:form>
<p:outputPanel id="imgBlock" layout="block">
<div class="ContentFlow" style="width: …Run Code Online (Sandbox Code Playgroud) 在我的数据表延迟加载期间更新列表时,我无法找到将执行我的javascript的ajax事件.此javascript负责根据我的列表更新图像封面流,该列表在初始数据表加载期间,在进行分页时以及更改页面上的记录数时重新填充.非常感谢任何帮助找到一种方法来使事件在这些情况下执行我的javascript!提前致谢!
Primefaces 3.3.1 Mojarra 2.1.5 JBoss AS 7.1.0.Final
datatable ×3
primefaces ×3
events ×1
filter ×1
hibernate ×1
jsf ×1
lazy-loading ×1
pagination ×1
render ×1