Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java p:dataTable-删除行后刷新dataTable_Java_Jsf_Jakarta Ee_Jsf 2_Primefaces - Fatal编程技术网

Java p:dataTable-删除行后刷新dataTable

Java p:dataTable-删除行后刷新dataTable,java,jsf,jakarta-ee,jsf-2,primefaces,Java,Jsf,Jakarta Ee,Jsf 2,Primefaces,下面是我的数据表图片,我想当我删除一行,数据表刷新。但行已从数据库中删除,但此后不会从数据表中删除。 我尝试以下代码,但他们无法帮助我 <h2>مشاهده اطلاعات پرسنل</h2> <h:form id="f2" prependId="false"> <p:dataTable id="pdataTable" var="personel" value="#{personelMB.personelList}" rowKey

下面是我的数据表图片,我想当我删除一行,数据表刷新。但行已从数据库中删除,但此后不会从数据表中删除。 我尝试以下代码,但他们无法帮助我

<h2>مشاهده اطلاعات پرسنل</h2>   
 <h:form id="f2" prependId="false">  

    <p:dataTable id="pdataTable" var="personel" value="#{personelMB.personelList}" rowKey="#{personelMB.personel_id}"
    >  

        <f:facet name="header">  
            اطلاعات پرسنل 
        </f:facet>  

        <p:column>  
            <f:facet name="header">  
               شماره پرسنلی  
            </f:facet>  

            <h:outputText value="#{personel.personel_id}" />  

            <f:facet name="footer">  
                کدملی 
            </f:facet>  
        </p:column>  

        <p:column headerText="نام">  
            <h:outputText value="#{personel.pname}" />  
        </p:column>  

        <p:column headerText="نام خانوادگی">  
            <h:outputText value="#{personel.pfamily}" />  
        </p:column>  

        <p:column headerText="آدرس">  
            <h:outputText value="#{personel.paddress}" />  
        </p:column>  
   <p:column headerText="تلفن">  
            <h:outputText value="#{personel.pphone}" />  
        </p:column>
        <p:column>
      <f:facet name="حذف">
         <h:outputText value="" />
      </f:facet>
      <p:commandButton icon="ui-icon-close" title="حذف"
                       actionListener="#{personelMB.deletePersonel(personel.personel_id)}" update="pdataTable"/>
   </p:column>
        <f:facet name="footer">  
            تعداد رکورد#{fn:length(personelMB.getPersonelList())} میباشد.  
        </f:facet>  

    </p:dataTable>  

</h:form> 
xhtml文件

<p:commandButton icon="ui-icon-close" title="حذف"
                       actionListener="#{personelMB.deletePersonel(personel.personel_id)}" action="#{personelMB.deleteAction(personel)}"/>
   </p:column>


请帮助我。

在commandbutton上使用update=“@form”参数

您在中尝试过类似的方法吗

 <p:commandButton update=":f2:pdataTable"></p:commandButton>

将ajax改为false,使其成为true

actionListener="#{personelMB.deletePersonel(personel.personel_id)}"  update="@form" ajax="true"/>

检查你的bean是否是ViewScope。我被@SessionScope使用。我将其更改为ViewScope,但它也不起作用。您确定操作方法正在运行吗?我的意思是,您是否调试或发布日志跟踪,以确保有效地执行了该方法?这可能是一个Java问题,而不是JSF/Primefaces。
ajax=“true”
是默认值,因此这个答案在这方面是不正确的。真正的问题是,
reRender
应该更改为
update
。所以社区的变化让答案变得更糟。。。
 <p:commandButton update=":f2:pdataTable"></p:commandButton>
actionListener="#{personelMB.deletePersonel(personel.personel_id)}"  update="@form" ajax="true"/>