Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.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
Jsf 2 ignoreValidationFailed在p:dataTable中不起作用_Jsf 2_Primefaces_Omnifaces - Fatal编程技术网

Jsf 2 ignoreValidationFailed在p:dataTable中不起作用

Jsf 2 ignoreValidationFailed在p:dataTable中不起作用,jsf-2,primefaces,omnifaces,Jsf 2,Primefaces,Omnifaces,我正在datatable内部使用actionListener ajax调用,并尝试执行以下操作: 跳过验证 使用插入的值更新模型 我知道BalusC的omnifaces实用程序库可以使用o:ignoreValidationFailed来实现这一点 但我在primefaces数据表中工作失败了 我还发现它在ui内部无法工作:在另一篇文章中重复 我不知道这是不是一个错误。 下面是我的代码示例 <o:form id ="trans_desc_form"> &

我正在datatable内部使用actionListener ajax调用,并尝试执行以下操作:

跳过验证 使用插入的值更新模型 我知道BalusC的omnifaces实用程序库可以使用o:ignoreValidationFailed来实现这一点 但我在primefaces数据表中工作失败了

我还发现它在ui内部无法工作:在另一篇文章中重复 我不知道这是不是一个错误。 下面是我的代码示例

<o:form id ="trans_desc_form">          
      <p:outputPanel id="stkdetailsid">                 
    <p:dataTable id="transactiondetailsid" value="#{stockTransactionsBean.stkTransHeader.stkTransDetailsList}" 
                 var="stkTransDet"  rowIndexVar="rowIndex">            
         <p:column>  
                    <f:facet name="header">  
                        <h:outputText value="Item Code" />  
                    </f:facet>                         
        <p:autoComplete id="dd" required="true" 
                            value="#{stkTransDet.item}" var="i" itemLabel="#{i.itemno}   #{i.itemnamee}" 
                            itemValue="#{i}" converter="itemsConverter"
                            completeMethod="#{stockTransactionsBean.completeItems}"/>            
          </p:column>                          
           <p:column>
                 <p:commandButton  value="-"  update="@form"  process="@form"
                                    actionListener="#{stockTransactionsBean.removeRow(rowIndex)}"> 
                                    <o:ignoreValidationFailed />
                    </p:commandButton>                                   
           </p:column>                
            </p:dataTable> 

      </p:outputPanel>
      </o:form>  
2-我从我的JPA实体中删除了@NotNull,这将强制验证

@JoinColumn(name = "ITEMNO", referencedColumnName = "ITEMNO")
@ManyToOne(optional = false, fetch = FetchType.LAZY)
//@NotNull
private Item item;

要跳过验证,您可以在p:commandButton上使用immediate=true属性,如果验证失败,immediate=true将不会使用插入的值更新模型
@JoinColumn(name = "ITEMNO", referencedColumnName = "ITEMNO")
@ManyToOne(optional = false, fetch = FetchType.LAZY)
//@NotNull
private Item item;