Personalization Framework for Vaadin

I am wondering if there has been any thought of adding personalization to Vaadin. Vaadin offers some amazing widgets that users can customize. For example, the Table object lets users collapse, sort, and change the order of columns. Could there be a way to save user preferences? With this, whenever a logs into the application, tables and or customizable components would display in the way the user prefers.

Components could have a method like Component.applyPersonilization(PersonalizationProfile). The PersonlizationProfile would be a very generic, and would offer methods like getProperty() and setProperty(). Components that get attached with a profile would inspect it for properties that are of interest to them.

Do all Components have some sort of unique indentifier that personalizations could be stored in reference to?

-Farhan

Vaadin components do not have that kind of identifiers, so implementing the proposed functionality would be up to the developer. In any case, many Vaadin components do not send their visible state to the server (e.g. the Table doesn’t send reorder or column hide events) so there would be nothing to store even if the components had an ID.

Of course, the proposed functionality isn’t impossible to develop. If you feel the feature should be a part of the core framework, please add an enhancement request at
http://dev.vaadin.com
, and our dev team will take a look at it :slight_smile:

Actually, Table does send these, at least in the most recent versions of Vaadin - see ColumnResizeListener and ColumnReorderListener.

I figured my info was old… Need to check out all the new features :slight_smile: