* Build the crosstab. Throws LayoutException if anything is wrong
* @return
*/
public DJCrosstab build(){
if (crosstab.getMeasures().isEmpty()){
throw new LayoutException("Crosstabs must have at least one measure");
}
if (crosstab.getColumns().isEmpty()){
throw new LayoutException("Crosstabs must have at least one column");
}
if (crosstab.getRows().isEmpty()){
throw new LayoutException("Crosstabs must have at least one row");
}
//Ensure default dimension values
for (Iterator iterator = crosstab.getColumns().iterator(); iterator.hasNext();) {