A rich:dataTable (and friends) should accept any DataModel. Specifically, in my case, ResultSetDataModel. In RF12274 it is stated that it only accepts Collections, but I have dozens of cases where it also accepts arrays, for example SortedMap as produced by javax.servlet.jsp.jstl.sql.Result,so there is clearly some confusion.
It should accept anything that h:dataTable accepts.
It isn't documented anywhere what data types are permitted.