Cursor cursor = sp.getCursor(p.getName(), rs);
int cursorWidth = cursor.getDimension();
Set<String> allowedColumns = getAllowedColumns(outputFilter, cursor);
TableData rt = new TableData();
RowInfo newHeader = getFilteredHeaderInfo(allowedColumns, cursor);
rt.setHeader(newHeader);
returnTO.addTableData(p.getName(), rt);
while(rs.next()) {
ArrayList<Object> cellValues = new ArrayList<Object>();
for (int i = 0; i < cursorWidth; i++) {
if (outputFilter.containsKey(cursor.getColumnName(i))) {
cellValues.add(dba.getObjectFromResultSetByType(rs,
cursor.getColumnJavaClassName(i),
cursor.getColumnSqlDataType(i),
i+1));
}
}
if (cellValues.size() > 0)
rt.addRow(new RowData(newHeader, cellValues.toArray()));
}
rs.close();
}
else {
if (outputFilter.containsKey(p.getName())) {