Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 3.0.RC1
-
Fix Version/s: 3.0
-
Component/s: ACE-Components
-
Labels:None
-
Environment:Java 1.6, Apache Tomcat 7.0.23
-
Assignee Priority:P1
Description
As you can see in my example - the content of the first row in wrapped in a div with the CSS class I gave my ace:column instead of just set it to the TD - like it does for the others. I think thats an issue that should be fixed.
XHTML:
<ace:dataTable value="#{bean.items}"
var="item"
styleClass="table">
<ace:column styleClass="first">
<f:facet name="header">
Header Text
</f:facet>
#{item.something}
</ace:dataTable>
HTML Output:
<div class="... table" ...>
<table>
<thead>
<tr>
<th class="ui-widget-header first">Header Text</th>
</tr>
</thead>
<tbody>
<tr class="ui-datatable-even">
<td>
<div class="first">First Row Something</div>
</td>
</tr>
<tr class="ui-datatable-odd">
<td class="first">Second Row Something</td>
</tr>
<tr class="ui-datatable-even">
<td class="first">Third Row Something</td>
</tr>
</tbody>
</table>
</div>
XHTML:
<ace:dataTable value="#{bean.items}"
var="item"
styleClass="table">
<ace:column styleClass="first">
<f:facet name="header">
Header Text
</f:facet>
#{item.something}
</ace:dataTable>
HTML Output:
<div class="... table" ...>
<table>
<thead>
<tr>
<th class="ui-widget-header first">Header Text</th>
</tr>
</thead>
<tbody>
<tr class="ui-datatable-even">
<td>
<div class="first">First Row Something</div>
</td>
</tr>
<tr class="ui-datatable-odd">
<td class="first">Second Row Something</td>
</tr>
<tr class="ui-datatable-even">
<td class="first">Third Row Something</td>
</tr>
</tbody>
</table>
</div>
in 'org.icefaces.ace.component.datatable.DataTableRenderer' in the 'encodeRow' method i find the line
encodeRegularCell(context, table, columns, kid, clientId, selected, (rowIndex == 0));
which causes 'encodeRegularCell' method to call
writer.startElement(HTML.DIV_ELEM, null);
and thus inserting this <div> tag (which is quite annoying for me).
cheers - tobias