I'm trying to use the Table component. Behind the Table, I've
implemented an IBasicTableModel to provide the data. In that class, I
pass in a DAO and a partially filled out object (data in the object is
obtained from a form).

In the My implementation of IBasicTableModel, when the getCurrentRows
method is called, I use the information passed in to call a method on
the DAO to fetch the data to fill that table with data.

On return the data attribute contains a Collection. I then take the
Collection, get it's Iterator, and return that. The full code is here:

public Iterator getCurrentPageRows( int nFirst, int nPageSize,
        ITableColumn objSortColumn, boolean bSortOrder) 
{
        data = null;    
        String columnName = (objSortColumn != null) ?
objSortColumn.getColumnName() : "";
        if (getUserDAO() != null)
        {
                data = getUserDAO().findLikeItemInRangeSorted(likeItem, 
                                nFirst, nPageSize, 
                                columnName, bSortOrder);
        }
        return (data != null) ? data.iterator() : new
ArrayList().iterator();
}

My problem is that sometimes, when the table renders, there are cells
and occasionally rows that don't render.

I get error messages like this:


org.apache.tapestry.contrib.table.model.ognl.OgnlTableColumnEvaluator
getColumnValue
SEVERE: Cannot use column expression 'iacOffice' in row

When that happens what I get looks like this <td></td>, not this
<td>&nbsp;</td>

In some cases I lose whole rows, <tr></tr>

Can anyone suggest what's going wrong here?


Tony


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to