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
Ajax ui:重复-从列表中添加/删除元素无法正常工作_Ajax_Jsf 2_Facelets_Mojarra_Uirepeat - Fatal编程技术网

Ajax ui:重复-从列表中添加/删除元素无法正常工作

Ajax ui:重复-从列表中添加/删除元素无法正常工作,ajax,jsf-2,facelets,mojarra,uirepeat,Ajax,Jsf 2,Facelets,Mojarra,Uirepeat,我的.xhtml文件中有以下代码 <h:form id="registration3Form"> <h:panelGroup id="terms_outer_panel"> <h:commandLink styleClass="item-7" action="#{registerBusinessWizardController.addCourse}" value="#{msgB

我的.xhtml文件中有以下代码

<h:form id="registration3Form">
<h:panelGroup id="terms_outer_panel">
   <h:commandLink styleClass="item-7" 
                    action="#{registerBusinessWizardController.addCourse}" 
                    value="#{msgBundle['registerThirdPage.panel.addSchedule']}">
   </h:commandLink>
   <ui:repeat value="#{registerBusinessWizardController.courses}" var="course">      
                    <h:panelGroup id="terms_inner_panel">
                        <div class="term">

                            <h:inputText id="price" styleClass="item-2" value="#{course.price}" />

                            <h:inputText  id="dateFrom" styleClass="date" value="#{course.date}" >
                                <f:convertDateTime  pattern="yy-MM-dd" type="date" dateStyle="long"/>
                            </h:inputText>

                            <h:inputTextarea value="#{course.additionalInfo}"/>

                            <p class="more">
                                <h:commandLink 
                                    value="#{msgBundle['registerThirdPage.panel.deleteSchedule']}" 
                                    actionListener="#{registerBusinessWizardController.removeCourse}">
                                    <f:ajax render=":registration3Form:terms_outer_panel" execute="terms_inner_panel"/>
                                </h:commandLink>

                            </p>
                        </div>
                    </h:panelGroup>
        </ui:repeat>
    //some other stuff
</h:panelGroup>
</h:form>
我正在将价格为空的新课程对象additionalInfo和日期添加到ui:repeat使用的列表中

相反,我得到了新的

<div class="term"> 
具有从上一个条目复制的值的零件

当我从managedBean中的列表中删除元素时,列表中的适当对象被删除,我看到刚刚删除的对象中的数据:/

有人遇到过这样的问题吗? 你有什么建议吗

这似乎是另一个bug。莫哈拉的问题太多了。第一步是通过将组件替换为完整的UIData组件(如)来排除可疑组件。如果它能工作,那么它肯定是中的一个bug,否则它只是您自己代码中的一个bug,根据给出的代码,我没有看到任何bug,但是我假设您的bean是@viewscope

如果它确实是由自身引起的,那么第一步通常是升级到最新的Mojarra版本。Servlet2.5容器的版本是2.0.6,Servlet3.0容器的版本是2.1.4。如果这还不能解决问题,那么您应该考虑替换Mojara,它有一个不同的更好的实现。如果由于某种原因这不是一个选项,那么您应该考虑查看一个第三方组件库,该库具有基于UIDATA的组件,该组件不提供任何标记,例如

< P>这似乎是另一个错误。莫哈拉的问题太多了。第一步是通过将组件替换为完整的UIData组件(如)来排除可疑组件。如果它能工作,那么它肯定是中的一个bug,否则它只是您自己代码中的一个bug,根据给出的代码,我没有看到任何bug,但是我假设您的bean是@viewscope

如果它确实是由自身引起的,那么第一步通常是升级到最新的Mojarra版本。Servlet2.5容器的版本是2.0.6,Servlet3.0容器的版本是2.1.4。如果这还不能解决问题,那么您应该考虑替换Mojara,它有一个不同的更好的实现。如果由于某种原因这不是一个选项,那么您应该考虑查看一个第三方组件库,该库具有基于UIDATA的组件,该组件不提供任何标记,例如.

<div class="term">