Tengo una clase que extiende de UI, la que te genera por default vaadin:
protected void init(VaadinRequest vaadinRequest) {
WrappedSession session = vaadinRequest.getWrappedSession();
Navigator nav = new Navigator(this,this);
Home h = new Home(session);
nav.addView("home", h);
VerticalLayout layout = new VerticalLayout();
TextField name = new TextField("User:");
Button button = new Button("Click");
button.addClickListener(e -> {
vaadinRequest.getWrappedSession().setAttribute("user", name.getValue());
nav.navigateTo("home");
});
layout.addComponents(name, button);
setContent(layout);
}
ahora cuando doy click al boton se va a home: extiende de VerticalLayout e implementa View
public Home(WrappedSession w) {
addComponent(new Label("Hola " + w.getAttribute("user") ));
}
Lo cual muestra lo siguiente:
Hola null