Ich habe eine Wiederholungskontrolle erstellen. Immer wenn Komponenten das Formular aktualisieren, wird dieser Laufzeitfehler zurückgegeben.Laufzeitfehler nach der Aktualisierung mit Wiederholungskontrolle
Ich weiß, dass mein Beitrag hauptsächlich Code ist, aber ich habe keine Ahnung, was ich falsch gemacht habe. Und es ist schwer, etwas anderes als diese Art von Unsinn zu füllen, sonst lässt mich StackOverflow nicht posten.
javax.faces.FacesException
com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:106)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:210)
com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:96)
com.ibm.xsp.controller.FacesControllerImpl.execute(FacesControllerImpl.java:256)
com.ibm.xsp.webapp.FacesServlet.serviceView(FacesServlet.java:228)
com.ibm.xsp.webapp.FacesServletEx.serviceView(FacesServletEx.java:157)
com.ibm.xsp.webapp.FacesServlet.service(FacesServlet.java:160)
com.ibm.xsp.webapp.FacesServletEx.service(FacesServletEx.java:138)
com.ibm.xsp.webapp.DesignerFacesServlet.service(DesignerFacesServlet.java:103)
com.ibm.designer.runtime.domino.adapter.ComponentModule.invokeServlet(ComponentModule.java:576)
com.ibm.domino.xsp.module.nsf.NSFComponentModule.invokeServlet(NSFComponentModule.java:1335)
com.ibm.designer.runtime.domino.adapter.ComponentModule$AdapterInvoker.invokeServlet(ComponentModule.java:853)
com.ibm.designer.runtime.domino.adapter.ComponentModule$ServletInvoker.doService(ComponentModule.java:796)
com.ibm.designer.runtime.domino.adapter.ComponentModule.doService(ComponentModule.java:565)
com.ibm.domino.xsp.module.nsf.NSFComponentModule.doService(NSFComponentModule.java:1319)
com.ibm.domino.xsp.module.nsf.NSFService.doServiceInternal(NSFService.java:662)
com.ibm.domino.xsp.module.nsf.NSFService.doService(NSFService.java:482)
com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService(LCDEnvironment.java:357)
com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:313)
com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)
java.lang.IllegalArgumentException
javax.faces.model.ListDataModel.getRowData(ListDataModel.java:141)
com.ibm.xsp.component.UIRepeatContainer.addIndexedDataContext(UIRepeatContainer.java:173)
com.ibm.xsp.component.UIRepeatContainer.getDataContexts(UIRepeatContainer.java:86)
com.ibm.xsp.util.DataPublisher.getDataContextList(DataPublisher.java:349)
com.ibm.xsp.util.DataPublisher.revokeControlData(DataPublisher.java:271)
com.ibm.xsp.component.UIDataPanelBase.revokeControlData(UIDataPanelBase.java:319)
com.ibm.xsp.component.UIDataPanelBase.processDecodes(UIDataPanelBase.java:334)
javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1177)
com.ibm.xsp.component.UIRepeat.processDecodes(UIRepeat.java:526)
javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1177)
com.ibm.xsp.component.UIDataPanelBase.processDecodes(UIDataPanelBase.java:331)
javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1177)
javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1177)
javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1177)
com.ibm.xsp.extlib.component.layout.UIVarPublisherBase.processDecodes(UIVarPublisherBase.java:123)
javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1177)
com.ibm.xsp.component.UIDataPanelBase.processDecodes(UIDataPanelBase.java:331)
javax.faces.component.UIForm.processDecodes(UIForm.java:166)
javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1177)
javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1177)
javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:343)
com.ibm.xsp.component.UIViewRootEx._processDecodes(UIViewRootEx.java:1438)
com.ibm.xsp.component.UIViewRootEx.processDecodes(UIViewRootEx.java:1399)
com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:98)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:210)
com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:96)
com.ibm.xsp.controller.FacesControllerImpl.execute(FacesControllerImpl.java:256)
com.ibm.xsp.webapp.FacesServlet.serviceView(FacesServlet.java:228)
com.ibm.xsp.webapp.FacesServletEx.serviceView(FacesServletEx.java:157)
com.ibm.xsp.webapp.FacesServlet.service(FacesServlet.java:160)
com.ibm.xsp.webapp.FacesServletEx.service(FacesServletEx.java:138)
com.ibm.xsp.webapp.DesignerFacesServlet.service(DesignerFacesServlet.java:103)
com.ibm.designer.runtime.domino.adapter.ComponentModule.invokeServlet(ComponentModule.java:576)
com.ibm.domino.xsp.module.nsf.NSFComponentModule.invokeServlet(NSFComponentModule.java:1335)
com.ibm.designer.runtime.domino.adapter.ComponentModule$AdapterInvoker.invokeServlet(ComponentModule.java:853)
com.ibm.designer.runtime.domino.adapter.ComponentModule$ServletInvoker.doService(ComponentModule.java:796)
com.ibm.designer.runtime.domino.adapter.ComponentModule.doService(ComponentModule.java:565)
com.ibm.domino.xsp.module.nsf.NSFComponentModule.doService(NSFComponentModule.java:1319)
com.ibm.domino.xsp.module.nsf.NSFService.doServiceInternal(NSFService.java:662)
com.ibm.domino.xsp.module.nsf.NSFService.doService(NSFService.java:482)
com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService(LCDEnvironment.java:357)
com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:313)
com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)
Und hier ist der Code:
<xp:repeat id="repeatApproveForward" repeatControls="true"
var="repeat_row" indexVar="repeat_index">
<xp:this.value><![CDATA[#{javascript:getComponent("ccAprForwardStateArray").getValue();}]]></xp:this.value>
<xp:panel>
<xp:this.rendered><![CDATA[#{javascript:currentDocument.isEditable() && compositeData.debug}]]></xp:this.rendered>
<xp:br></xp:br>
#
<xp:text escape="true" id="ccAprForwardCount"
value="#{javascript:repeat_index}" style="font-weight:bold">
<xp:this.converter>
<xp:convertNumber type="number"
integerOnly="true">
</xp:convertNumber>
</xp:this.converter>
</xp:text>
<xp:br></xp:br>
<xp:span style="font-weight:bold">Status:</xp:span>
<xp:text escape="true" id="ccAprForwardStatus">
<xp:this.value><![CDATA[#{javascript:repeat_row[0]}]]></xp:this.value>
</xp:text>
<xp:br></xp:br>
<xp:span style="font-weight:bold">StatusDesc:</xp:span>
<xp:text escape="true" id="ccAprForwardStatusDesc">
<xp:this.value><![CDATA[#{javascript:repeat_row[1]}]]></xp:this.value>
</xp:text>
<xp:br></xp:br>
<xp:span style="font-weight:bold">Approver:</xp:span>
<xp:text escape="true" id="ccAprForwardApprover">
<xp:this.value><![CDATA[#{javascript:repeat_row[2]}]]></xp:this.value>
</xp:text>
<xp:br></xp:br>
<xp:span style="font-weight:bold">Condition:</xp:span>
<xp:text escape="true" id="ccAprForwardCondition">
<xp:this.value><![CDATA[#{javascript:repeat_row[3]}]]></xp:this.value>
</xp:text>
<xp:br></xp:br>
<xp:span style="font-weight:bold">
MailNotification:
</xp:span>
<xp:text escape="true" id="ccAprForwardMail">
<xp:this.value><![CDATA[#{javascript:repeat_row[4]}]]></xp:this.value>
</xp:text>
<xp:br></xp:br>
<xp:span style="font-weight:bold">
MailTimeOutNotification
</xp:span>
<xp:span style="font-weight:bold">:</xp:span>
<xp:text escape="true" id="ccAprForwardTimeOutMail">
<xp:this.value><![CDATA[#{javascript:repeat_row[5]}]]></xp:this.value>
</xp:text>
<xp:br></xp:br>
<xp:span style="font-weight:bold">EventSubject</xp:span>
<xp:span style="font-weight:bold">:</xp:span>
<xp:text escape="true" id="ccAprForwardEventSubject">
<xp:this.value><![CDATA[#{javascript:repeat_row[6]}]]></xp:this.value>
</xp:text>
<xp:br></xp:br>
</xp:panel>
<xp:span style="font-weight:bold"></xp:span>
<xp:button id="btnApproveForward"
styleClass="btn btn-sm btn-success">
<xp:this.value><![CDATA[#{javascript:getComponent("ccAprForwardStatusDesc").getValue();}]]></xp:this.value>
<xp:this.rendered><![CDATA[#{javascript:viewScope.isShowAprNote != "1"
&& getComponent("ccAprForwardCondition").getValue()
&& getComponent("ccAprUserCondition").getValue();}]]></xp:this.rendered>
<xp:span styleClass="glyphicon glyphicon-thumbs-up"></xp:span>
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
<xp:actionGroup>
<xp:this.condition><![CDATA[#{javascript:if (!repeat_row[4] | @Trim([repeat_row[2]]) == "")
{false}else{true}}]]></xp:this.condition>
<xp:executeScript>
<xp:this.script><![CDATA[#{javascript:viewScope.isShowAprNote = "1"
viewScope.isShowRejNote = ""}]]></xp:this.script>
</xp:executeScript>
<xp:modifyField name="Status"
var="currentDocument">
<xp:this.value><![CDATA[#{javascript:repeat_row[0]}]]></xp:this.value>
</xp:modifyField>
<xp:modifyField name="StatusDesc"
var="currentDocument">
<xp:this.value><![CDATA[#{javascript:repeat_row[1]}]]></xp:this.value>
</xp:modifyField>
<xp:modifyField name="ApproveGroup"
var="currentDocument">
<xp:this.value><![CDATA[#{javascript:repeat_row[2]}]]></xp:this.value>
</xp:modifyField>
<xp:modifyField name="EventSubject"
var="currentDocument">
<xp:this.value><![CDATA[#{javascript:repeat_row[6]}]]></xp:this.value>
</xp:modifyField>
</xp:actionGroup>
</xp:this.action></xp:eventHandler></xp:button>
</xp:repeat>
<xp:panel id="panelAprNote" >
<xp:this.rendered><![CDATA[#{javascript:viewScope.get("isShowAprNote") == "1" && viewScope.get("isShowRejNote") != "1"}]]></xp:this.rendered>
<xp:inputText id="txtAprApproverNote"
dojoType="dijit.form.TextBox" value="#{viewScope.AprApproverNote}">
<xp:this.dojoAttributes>
<xp:dojoAttribute name="placeholder"
value="Notunuzu giriniz">
</xp:dojoAttribute>
</xp:this.dojoAttributes>
</xp:inputText>
 <xp:button value="Gönder" id="button4" styleClass="btn btn-sm btn-success">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
<xp:actionGroup>
<xp:modifyField name="ApproverNote" var="currentDocument" value="#{javascript:viewScope.AprApproverNote}">
</xp:modifyField>
<xp:actionGroup>
<xp:executeScript>
<xp:this.script><) + " Onayladı. :") & currentDocument.ApproverNote(0)}]]></xp:this.script>
</xp:executeScript>
<xp:executeScript>
<xp:this.script><![CDATA[#{javascript:var URL = facesContext.getExternalContext().getRequest().getRequestURL();
var notesLink = currentDocument.getDocument().getNotesURL();
var vHtml = '"Aşağıda linki bulunan döküman onayınıza gönderilmiştir. Bu bir bilgilendirme mailidir."<br></br><br></br><a href="'+notesLink+'">Onayınızdaki Dökümana Notes Uygulaması Üzerinden Ulaşmak İçin Tıklayınız</a><br></br><br></br>"Yukarıdaki link açılmıyor ise aşağıdaki linki tıklayınız."<br></br><a href="' +URL+'?documentId=' + currentDocument.getDocument().getUniversalID() + '&action=openDocument">Onayınızdaki Dökümana Web Browser Üzerinden Ulaşmak İçin Tıklayınız</a>'
var mail = new HTMLMail();
mail.setTo(currentDocument.getItemValue("ApproveGroup"));
mail.setSubject("[ERP] Yapitasi " + currentDocument.getItemValue("Form") + " Onay Uyari Maili");
mail.addHTML(vHtml);
mail.send();}]]></xp:this.script>
</xp:executeScript>
</xp:actionGroup>
<xp:saveDocument var="currentDocument">
</xp:saveDocument>
<xp:openPage name="#{javascript:compositeData.view}">
</xp:openPage>
</xp:actionGroup>
</xp:this.action>
</xp:eventHandler>
</xp:button> 
<xp:button value="Cancel" id="button3"
styleClass="btn btn-default">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete"></xp:eventHandler></xp:button>
</xp:panel>
Die Fehlermeldung allein nicht ausreicht, um Ihnen zu helfen. Ich empfehle zwei Dinge: 1) Reduzieren Sie Ihren Code und Ihre Logik, um das Problem zu isolieren. 2) Neben der Fehlermeldung: posten Sie den XML-Markup-Code der Wiederholung/XPage sowie die Logik, die die Wiederholung aktualisiert. –