Hi, Do you think this kind of code enjoy google ?
<form id="j_id29" name="j_id29" method="post" action="/stockradio/radio.jsf" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="j_id29" value="j_id29" />
<table class="dr-table rich-table " id="j_id29:j_id30" border="0" cellpadding="0" cellspacing="0" width="100%"><colgroup span="1"></colgroup><thead class="dr-table-thead"><tr class="dr-table-header rich-table-header "><th class="dr-table-headercell rich-table-headercell " colspan="1" scope="colgroup">Sorting Example</th></tr><tr class="dr-table-subheader rich-table-subheader "><th class="dr-table-subheadercell rich-table-subheadercell " scope="col" id="j_id29:j_id30:j_id32header" onclick="A4J.AJAX.Submit('_viewRoot','j_id29',event,{'similarityGroupingId':'j_id29:j_id30','parameters':{'fsp':'j_id29:j_id30:j_id32','j_id29:j_id30':'fsp'} ,'actionUrl':'/stockradio/radio.jsf'} )" style="cursor: pointer;"><div id="j_id29:j_id30:j_id32header:sortDiv"><span class="dr-table-sortable-header">State Name<img src="/stockradio/a4j/g/3_3_1.GAorg.richfaces.renderkit.html.iconimages.DataTableIconSortNone/DATB/eAFjYGD4!!8!AAYAAv4_.jsf" alt="" width="15" height="15" class="dr-table-header-sort-img rich-sort-icon" /></span></div></th></tr></thead><tfoot><tr class="dr-table-footer rich-table-footer "><td class="dr-table-footercell rich-table-footercell " colspan="1" scope="colgroup"><div class="dr-dscr rich-datascr " id="j_id29:j_id30:ds" style=" " align="center"><table border="0" cellpadding="0" cellspacing="1" class="dr-dscr-t rich-dtascroller-table " id="j_id29:j_id30:ds_table" style="text-align:center"><tbody><tr><td class="dr-dscr-button-dsbld rich-datascr-button-dsbld dr-dscr-button rich-datascr-button">««</td><td class="dr-dscr-button-dsbld rich-datascr-button-dsbld dr-dscr-button rich-datascr-button">«</td><td class="dr-dscr-button-dsbld rich-datascr-button-dsbld dr-dscr-button rich-datascr-button"></td><td class="dr-dscr-act rich-datascr-act ">1</td><td class="dr-dscr-inact rich-datascr-inact " onclick="Event.fire(this, 'rich:datascroller:onscroll', {'page': '2'});">2</td><td class=" dr-dscr-button rich-datascr-button" onclick="Event.fire(this, 'rich:datascroller:onscroll', {'page': 'next'});"></td><td class=" dr-dscr-button rich-datascr-button" onclick="Event.fire(this, 'rich:datascroller:onscroll', {'page': 'fastforward'});">»</td><td class=" dr-dscr-button rich-datascr-button" onclick="Event.fire(this, 'rich:datascroller:onscroll', {'page': 'last'});">»»</td></tr></tbody></table><script type="text/javascript">new Richfaces.Datascroller('j_id29:j_id30:ds', function(event){A4J.AJAX.Submit('_viewRoot','j_id29',event,{'ignoreDupResponses':true,'implicitEventsQueue':'j_id29:j_id30:ds','similarityGroupingId':'j_id29:j_id30:ds','parameters':{'ajaxSingle':'j_id29:j_id30:ds','j_id29:j_id30:ds':event.memo.page} ,'actionUrl':'/stockradio/radio.jsf'} ); return false;});</script></div></td></tr></tfoot><tbody id="j_id29:j_id30:tb"><tr class="dr-table-row rich-table-row dr-table-firstrow rich-table-firstrow "><td class="dr-table-cell rich-table-cell center " id="j_id29:j_id30:0:j_id32">
<b>MY KEY WORD2</b>
</td></tr><tr class="dr-table-row rich-table-row "><td class="dr-table-cell rich-table-cell center " id="j_id29:j_id30:1:j_id32">
<b>MY KEY WORD1</b>
</td></tr></tbody></table><input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState" value="j_id1" />
</form>
! This html was generated by the "rich:dataTable" JSF component who create this table. Moreover this component create JavaScript interation as "order by".
I think it's better to use TABLE balise for google. No ?