我在wildfly 8.2.0(mojarra 2.2.8)上使用了primefaces 5.0。
我尝试使用带扩展的简单primefaces数据表,但每次扩展行时,都会触发我的支持bean @PostConstruct
(它会重新加载数据,从而首先使@ViewScoped
无效)。
我在stackoverflow上看到了关于这个问题的其他问题,但没有解决方案对我有用:
@ViewScoped
(bean,view甚至omnifaces'one)我的豆子:
@Named
@javax.faces.view.ViewScoped
@SuppressWarnings("serial")
public class TestBean implements Serializable {
private List<String> things;
@PostConstruct
public void initialize() {
System.out.println("initializing...");
this.things = Arrays.asList("michael", "david", "paul");
}
public List<String> getThings() {
return this.things;
}
}
我的模板:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:p="http://primefaces.org/ui">
<h:head>
<title>Test</title>
</h:head>
<h:body>
<p:dataTable value="#{testBean.things}" var="thing">
<p:column>
<p:rowToggler />
</p:column>
<p:column>
<h:outputText value="#{thing}" />
</p:column>
<p:rowExpansion>
<h:outputText value="#{thing}" />
</p:rowExpansion>
</p:dataTable>
</h:body>
</html>
答案 0 :(得分:0)
要工作,0 1 2 3 4 5 4 3 2 1 0 1 2 3 4 5 4 ...
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 ...
必须在<p:dataTable>
内。