Vaadin lets you build secure, UX-first PWAs entirely in Java.
Free ebook & tutorial.
Mass data editor
I'm relatively new to Vaadin and I am wondering which components are best suited for implementing a mass data editor with about 100 columns and 100 rows.
The following are the minimum requirements:
- About 300 columns - the number of columns is fixed (i.e. columns cannot be added or removed)
- About 100 rows - the number of rows is not fixed (i.e. new rows can be added, existing rows can be deleted)
- Each cell must be quickly editable (e.g. tab navigation or navigation via directional arrows)
- It must be possible to tell which cell has the focus in order to offer the user certain actions to perform on the currently selected cell(s)
- Each column is of a certain data type (Integer, Boolean, String)
The following would be nice to have:
- Column headers with possibility for colspan (like in com.vaadin.ui.Grid)
- On-the-fly validation for each cell (e.g. check if the cell's value is within a defined numeric range). If on-the-fly validation is not possible (e.g. due to performance reasons), it would be sufficient to validate the whole grid on demand (e.g. after clicking a button).
- Multi-selection based on cells instead of rows
- Right-click-context-menu for cells
- Multi-cell-editing (e.g. select multiple cells -> right click -> edit -> editor dialog -> all selected cells are updated)
As far as I know, both Table and Grid are not designed for handling 100 columns with reasonable performance. What do you think is the best way to implement such a mass data editor using Vaadin?