You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ma...@apache.org on 2007/11/08 16:36:15 UTC
svn commit: r593203 -
/myfaces/shared/trunk/core/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlTableRendererBase.java
Author: manolito
Date: Thu Nov 8 07:36:15 2007
New Revision: 593203
URL: http://svn.apache.org/viewvc?rev=593203&view=rev
Log:
MYFACES-1764
always render <tr><td> if a datatable has no rows to stay html/xhtml dtd conformant
Modified:
myfaces/shared/trunk/core/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlTableRendererBase.java
Modified: myfaces/shared/trunk/core/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlTableRendererBase.java
URL: http://svn.apache.org/viewvc/myfaces/shared/trunk/core/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlTableRendererBase.java?rev=593203&r1=593202&r2=593203&view=diff
==============================================================================
--- myfaces/shared/trunk/core/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlTableRendererBase.java (original)
+++ myfaces/shared/trunk/core/src/main/java/org/apache/myfaces/shared/renderkit/html/HtmlTableRendererBase.java Thu Nov 8 07:36:15 2007
@@ -209,6 +209,17 @@
UIData uiData = (UIData) component;
ResponseWriter writer = facesContext.getResponseWriter();
+ int rowCount = uiData.getRowCount();
+
+ if (rowCount == 0) {
+ //nothing to render, to get valid xhtml we render an empty dummy row
+ writer.startElement(HTML.TR_ELEM, uiData);
+ writer.startElement(HTML.TD_ELEM, uiData);
+ writer.endElement(HTML.TD_ELEM);
+ writer.endElement(HTML.TR_ELEM);
+ return;
+ }
+
// begin the table
// get the CSS styles
Styles styles = getStyles(uiData);
@@ -216,16 +227,17 @@
int first = uiData.getFirst();
int rows = uiData.getRows();
int last;
+
if (rows <= 0)
{
- last = uiData.getRowCount();
+ last = rowCount;
}
else
{
last = first + rows;
- if (last > uiData.getRowCount())
+ if (last > rowCount)
{
- last=uiData.getRowCount();
+ last = rowCount;
}
}