JSF to Vaadin

Dear, I’m new to Vaadin.

I want to ask you regards the possibility to port some JSF web application to Vaadin.
Usually my web applications has a login page and after the authentication the application render different menus based on the user role.

The structure of my programs is:

Entities ↔ DAO ↔ Beans ↔ JSF (with RichFaces or PrimeFaces)

In the Entities I use NamedQuery and in the DAO I run the query, delete/update/create new database entries.

I use PostgreSQL and EclipseLink. Naturally the entities has a lot of relations (OneToOne, MenyToOne and ManyToMany)

I’m very interested to learn Vaadin framework and port my application to it, but after reading the wiki to use JPA with addressbook I’m a bit scared because seems to be complicated.
Is it really so? Is there the possibility to display different things Roles based? Is there some example to use to help me to port JSF to Vaadin applications?