myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Heinen (JIRA)" <...@myfaces.apache.org>
Subject [jira] Created: (TOMAHAWK-1482) HtmlTableRendererBase produces invalid html if row is not available
Date Fri, 29 Jan 2010 22:33:34 GMT
 HtmlTableRendererBase produces invalid html if row is not available
--------------------------------------------------------------------

                 Key: TOMAHAWK-1482
                 URL: https://issues.apache.org/jira/browse/TOMAHAWK-1482
             Project: MyFaces Tomahawk
          Issue Type: Bug
          Components: Extended Datatable
    Affects Versions: 1.1.9
         Environment: myfaces 1.2.8, tiles 2.0.7, richfaces 3.3.3.beta1
            Reporter: Michael Heinen


The class  org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlTableRendererBase produces
invalid html if a row is not available.
AJAX calls may fail in this case if invalid html is returned.

See method encodeInnerHtml:
for(int nr = 0; nr < newspaperRows; nr++){
...
  for(int nc = 0; nc < newspaperColumns; nc++) {
...
    if(!uiData.isRowAvailable()) {
      log.error("Row is not available. Rowindex = " + currentRow);
 295    break;
    }
    
    if (nc == 0) {
    ...
      renderRowStart(facesContext, writer, uiData, styles, nr);
    }
...
  }
  renderRowEnd(facesContext, writer, uiData);
  
There is a break in link 295 and the inner loop is left. renderRowStart is not called but
renderRowEnd is called!

FIX:
The call of "renderRowEnd(facesContext, writer, uiData)" must be in the inner loop as last
statement (1 line before the current position)



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message