请问如何实现这种功能:
1.dataview绑定的其中一列
值等于某个特殊值时则不显示改列(请参考代码部分)。
2.参考文章介绍的用PagedDataProvider进行服务器端分页,为什么现在PagedDataProvider不推荐使用了?
尝试换成GridDataProvider实现服务器端分页但是失败了,是不是dataview只能用不推荐使用的PagedDataProvider进行服务器端分页啊?
原来是这样的
复制内容到剪贴板JAVA 代码:
@ManagedProperty
private PagedDataProvider pagedBooks = new PagedDataProvider() {
public Object getData
(int start,
int limit
){......
} public int getTotalCount(){......}
}
我把分页由原来的PagedDataProvider改为GridDataProvider实现的步骤如下:
替换时直接把原来写在getDatas() 方法内的代码移到public Object[] getElements()方法中,
原来getTotalCount()方法内的代码移到public int getTotalCount()中,
public Object getElement(int index) 直接返回的null
控制台报错(请参考下面的页面代码部分)
复制内容到剪贴板XML 代码:
2008-06-22 08:10:25 严重 [facelets.viewhandler] Error Rendering View[/anonymity/listProducts.xhtml]
javax.el.ELException: /anonymity/listBooks.xhtml @63,55 value=\"#{b.name}\": 找不到类型ah.js.faces.anonymity.listProductsBean$1的'name'属性。
at __expression__(0)
问题比较基础,期待大侠伸以援手。
复制内容到剪贴板XML 代码:
<w:dataView id=\"viewListBooks\" jsvar=\"productView\" var=\"b\" rows=\"5\"
value=\"#{listBooksBean.pagedBooks}\">
.............................
<!-- 名称 -->
<w:outputColumn id=\"name\" value=\"#{b.name}\" />
<!-- 英文名 -->
<w:outputColumn id=\"en_name\" value=\"#{b.originalName}\" />
<!--放在url上的参数-->
<w:outputColumn id=\"id\" value=\"#{id}\"/>
<f:facet name=\"template\">
<h:panelGroup layout=\"block\" styleClass=\"product\">
<layout:panelGrid columns=\"2\">
<img src=\"../upload/{bookimage}\" title=\"{title}\" class=\"image\" />
<layout:panelGrid columns=\"1\">
......................
<h:outputLink>
<span class=\"title\">{bookname}</span>
<!--{id}放在value属性的引号内不求值了,这个怎么解决呢?-->
<f:param name=\"id\" value=\"{id}\" />
</h:outputLink>
<!--此处英文名有时为空,应当不显示,render=“?”。这里怎么处理呢-->
<!--此处英文名有时为空,应当不显示,render=“?”。这里怎么处理呢-->
<!--此处英文名有时为空,应当不显示,render=“?”。这里怎么处理呢-->
<!--此处英文名有时为空,应当不显示,render=“?”。这里怎么处理呢-->
<layout:cell colspan=\"1\" rowspan=\"1\" >
<span>英文名: </span>{en_name}
</layout:cell>
</layout:panelGrid>
</layout:panelGrid>
</h:panelGroup>
</f:facet>
<f:facet name=\"empty\">
抱歉,没有相关的图书信息.
</f:facet>
</w:dataView>
[
本帖最后由 jsffan 于 2008-6-22 10:54 编辑 ]