Страница гобелена, переходящая на следующую страницу: нажмите на следующую страницу (если содержимое таблицы на следующей странице доступно для редактирования, гобелен сообщит об ошибке) - PullRequest
1 голос
/ 01 ноября 2019

Нажмите на следующую страницу (если содержимое таблицы на следующем элементе таблицы содержит <input: type="text">)

org.apache.tapestry5.ioc.internal.util.TapestryException: компонент elementValueдолжен быть заключен в компонент Form. [at classpath: com / zte / easweb / pages / home / MyInvoice.tml, строка 178] в org.apache.tapestry5.internal.structure.ComponentPageElementImpl.invoke (ComponentPageElementImpl.java:948) в org.apache.tapestry5.internal$SetupRenderPhase.render (ComponentPageElementImpl.java:189)

MyInvoice.java

public class MyInvoice {

    public Pagination<FbpInvoiceV> getFbpInvoiceList() {
        try {
            logger.info("....1");
            fbpInvoiceList = bc4Boe.boe__queryMyInvoiceList(searchCondition, grid.getCurrentPage(),grid.getRowsPerPage());
        } catch (Exception e) {
            logger.error("....2", e);
        }
        return fbpInvoiceList;
    }

    public boolean canNotUpdateInvoice(Integer index) {
        FbpInvoiceV invoice = fbpInvoiceList.getItems().get(index - 1);
        String checkStatus = invoice.getCheckStatus();
        String standardCheckStatus = invoice.getStandardCheckStatus();
        if ("4".equals(checkStatus) || "4".equals(standardCheckStatus)) {
            return true;
        }
        return false;
    }
}
<html>
 <head></head>
 <body>
  <t:form t:id="optForm" clientvalidation="false"> 
   <div class="pannel1"> 
     <t:grid.zgrid t:id="grid" source="fbpInvoiceList" row="row" lean="true" rowsperpage="10" include="no,invoiceNo" model="model"> 
     <t:parameter name="invoiceNoCell"> 
      <div align="center" style="display: inline-block; white-space: nowrap;"> 
       <t:if t:test="${canNotUpdateInvoice(row.no)}">
         ${row.invoiceNo} 
        <p:else> 
         <t:textfield t:id="invoiceNo" name="invoiceNo" value="row.invoiceNo" /> 
        </p:else> 
       </t:if> 
      </div> 
     </t:parameter>
    </t:grid.zgrid> 
   </div> 
  </t:form> 
 </body>
</html>
...