0
來自瑞典的晚上好!Datatable不刷新
我嘗試獲取primefaces數據表來刷新。我嘗試了各種提示和解決方案,但沒有任何工作。 該按鈕在數據庫中觸發搜索,如果手動刷新paga或者如果使用表格排序功能,則會顯示結果。 意味着支持bean中的代碼工作。但單擊該按鈕後沒有直接自動刷新。 Bean範圍是Session。
這裏是頁
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui">
<h:head>
</h:head>
<h:body>
<ui:composition template="/templates/BasicTemplate.xhtml">
<ui:define name="content">
<h:form id="src_res">
<h2>Sök klass,undervisningsgrupp eller individ</h2>
<b>Sökord</b>: <h:inputText id="sw" value="#{smsb.searchword}"/>
<p:outputLabel value="Lärare"></p:outputLabel>
<h:selectOneListbox size="1" id="teacher" value="#{smsb.searchteacher}" >
<f:selectItems value="#{smsb.teachers}"/>
</h:selectOneListbox>
<p:commandButton action="#{smsb.searchgrp_user}" value="Sök!" update="src_list"/>
<p:dataTable id="src_list" value="#{smsb.searchresult}" var="obj" >
<p:column width="20%" sortBy="#{obj.groupname}">
<f:facet name="header" >
<h:outputText value="Beteckning"/>
</f:facet>
<h:outputText value="#{obj.groupname}"/>
</p:column>
<p:column width="10%">
<f:facet name="header" >
<h:outputText value="typ"/>
</f:facet>
<h:outputText value="#{obj.klass}"/>
</p:column>
<p:column width="10%" sortBy="#{obj.teacher}">
<f:facet name="header" >
<h:outputText value="lärare"/>
</f:facet>
<h:outputText value="#{obj.teacher}"/>
</p:column>
</p:dataTable>
</h:form>
</ui:define>
</ui:composition>
</h:body>
</html>
任何幫助或提示嗎?
至於 拉爾夫
編輯
您好,感謝名單的提供幫助!
正如你猜到了信息搜索結果的列表,並吸氣劑是由
List<sbasUserList> searchresult;
public List<sbasUserList> getSearchresult() {
return searchresult;
}
search_grp定義爲支持bean的方法:
public String searchgrp_user(){
//FacesContext context = FacesContext.getCurrentInstance();
ObjectContainer db = this.connBD("sms");
ObjectSet<sbasUserList> res;
this.searchresult = new ArrayList<sbasUserList>() ;
Query query=db.query();
query.constrain(sbasUserList.class);
query.descend("groupname").constrain(this.searchword).like();
query.descend("type").constrain('P').or(query.descend("type").constrain('M'));
query.descend("teacher").constrain(searchteacher).contains();
res = query.execute();
this.searchresult.addAll(res);
System.out.println(this.searchresult.size());
db.close();
return "";
}
表充滿了正確的DAT如果我手動更新瀏覽器。 (F5),但肯定希望自動完成此操作。
我是正確的, 「SOK!」是搜索按鈕?什麼是'smsb.searchresult',一個動作還是一個列表?如果列出,你確定在調用'smsb.searchgrp_user'後該值發生了變化嗎?如果這是一個行動,它在做什麼? – user1983983
嘿拉爾夫你可以顯示豆代碼來嗎? – Damian
@ user1983983:我用一些相關的代碼更新了我的問題。 – lilleGauss