gpt4 book ai didi

jsf - RowEditEvent 不发送新值primefaces

转载 作者:行者123 更新时间:2023-12-04 13:50:00 26 4
gpt4 key购买 nike

当我向列表中添加一个新行时,它将被添加得很好。但是,尝试编辑该行将在编辑模式下打开它。但是我输入的任何新值都不会传递给支持 bean。按编辑笔保存时发生崩溃。

它当然会因接收函数中的空指针异常而崩溃。

我以前有过它的工作。但我似乎无法让它在 Primefaces 5.1 或 5.2 中工作。

Aug 24, 2015 12:42:08 PM com.sun.faces.context.AjaxExceptionHandlerImpl handlePartialResponseError
SEVERE: java.lang.NullPointerException
at com.sg.bowlingInfo.backingHallmastaren.onRowEdit(backingHallmastaren.java:127)
<p:dataTable id="hallmastaren" var="bi" value="#{backingHallmastaren.listHallmastaren}" editable="true">
<f:facet name="header">
Hallmästaren
</f:facet>

<p:ajax event="rowEdit" listener="#{backingHallmastaren.onRowEdit}" update=":form:msgs" />
<!-- p:ajax event="rowEditCancel" listener="#{backingHallmastaren.addNew}" update=":form:msgs" / -->

<p:column headerText="Position">
<p:cellEditor>
<f:facet name="output"><h:outputText value="#{bi.position }" /></f:facet>
<f:facet name="input"><p:inputText id="positionInput" value="#{bi.position}" style="width:100%"/></f:facet>
</p:cellEditor>
</p:column>
<p:column>
<p:rowEditor />
</p:column>


</p:dataTable>
<p:commandButton actionListener="#{backingHallmastaren.addNew}"
value="Add" update=":form:hallmastaren" render=":form:hallmastaren" />

接收函数
public void onRowEdit(RowEditEvent event) {
Hallmaster hm = (Hallmaster) event.getObject();
double hcp = (220 - hm.getAverage()) * 0.8;

最佳答案

出于某种奇怪的原因,移动表单标签纠正了这个问题。
原始形式:

<h:form id="form"> <--- Not working
<p:growl id="msgs" showDetail="true"/>

<p style="float:right;">Telefon: 0418-663930</p>
<p class="Three-Dee">Svalövs Bowlinghall</p>

<ui:include src="event.xhtml" />

<ui:include src="menubar.xhtml" />

<div id="right">

<p:dataTable id="hallmastaren" var="bi" value="#{backingHallmastaren.listHallmastaren}" editable="true">
<f:facet name="header">
Hallmästaren
</f:facet>

在 div 内移动表单标签解决了这个问题。
<p:growl id="msgs" showDetail="true"/>

<p style="float:right;">Telefon: 0418-663930</p>
<p class="Three-Dee">Svalövs Bowlinghall</p>

<ui:include src="event.xhtml" />

<ui:include src="menubar.xhtml" />

<div id="right">
<h:form id="form"> <----- Working
<p:dataTable id="hallmastaren" var="bi" value="#{backingHallmastaren.listHallmastaren}" editable="true">
<f:facet name="header">
Hallmästaren
</f:facet>

关于jsf - RowEditEvent 不发送新值primefaces,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32180378/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com