is there an easy way to specify a default value for empty cells in a rich:dataTable component? I don't want to write an if-statement in EL for every column.
Nosuch functionality in table itself. You should provide that default values either in your model object or as you said with conditional rendered elements inside column.. The only components which fit your requirements - inplace's and combobox(it has defaultvalues properties)