App Layout - Addon

If you have questions to my Addon, you can ask me here.


Sorry for the late reply I didn’t get a notification that there was an addition to this thread.

This is rather suspicious:

java.lang.NoSuchMethodError: I guess you are trying to use Vaadin 7 or a Version of Vaadin prior Vaadin 8.1.rc1?
Since the method was added in Vaadin 8.1.rc1 you currently won’t be able to use prior versions

But I see I did not specified this in the addon versions. I fixed it now.

Vaadin 8 grid on right content side does not rerender to fit the screen.

I set app_layout as LEFT_RESPONSIVE and placed a grid on right side where the content should be placed.

If I collapse the left menu, the grid does not expand to fit the rest of the screen.

Thank you

version 0.9.14 annoyingly defaults to CDI. Cannot switch off CDI support, even when setting .withCDI(false).

0.9.14 keeps giving the following error:
java.lang.IllegalStateException: View must !not! be set! add your cdi views via ClassName or disable cdi support.

Thank you.

Thank you very much for reporting, it seems to be a bug that will be fix in 0.9.15 that came in with the improved spring support.
If you need fast support I really recommend you to always open an issue on Github I’m not getting any notifications if you post in this thread (even though I’m “following”). I will only check randomly every 1-3 Days in here.

We did figure it out
on Github


great component,

i implemented the layout, and setup a default view like this.


But when starts, no default view appear, only if i click on a menu item the view is loaded.

any suggestion ?


I need a more extensive code example could you please provide one?


i use a code like this.

AppLayout layout = AppLayoutBuilder.get(Behaviour.LEFT_HYBRID)
                .add(menuHeader, HEADER)
                .add(session.getI18n("home"), VaadinIcons.HOME, HomePanel.class)
                .add(session.getI18n("contacts"), VaadinIcons.USERS, ContactListPanel.class)
                .add(session.getI18n("campaigns"), VaadinIcons.USERS, CampaignListPanel.class)
                .add(session.getI18n("agenda"), VaadinIcons.CALENDAR, CalendarPanel.class) 
                .addClickable(session.getI18n("support"), VaadinIcons.EXIT, clickEvent -> {
                    UI.getCurrent().addWindow(new WindowToSubmitImprovement());
                .addClickable(session.getI18n("suggest"), VaadinIcons.EXIT, clickEvent -> {
                    UI.getCurrent().addWindow(new WindowToSubmitInvitation());
                .addClickable(session.getI18n("exit"), VaadinIcons.EXIT, clickEvent -> {
                }, FOOTER)
                .add(session.getI18n("configuration"), VaadinIcons.COG, ConfigPanel.class, FOOTER)


the classes like HomePanel.class are declared as : public class HomePanel extends Panel implements View {

Can you help ?


Sure I will try. I checked your code, it seems all fine to me, my problem is that if I use your Code It works and the DefaultView will be shown. Would it be possible to grant me access to the full code? Could it be that you are missing out some exceptions that might thrown by your HomeView during startup? Since this would be currently the only explaination for me.
Note that the default View will only be shown if you navigate to the url of your Application without any additional path in the URL. So let’s being said your Vaadin Application runs under navigating to won’t show the default View if you added the default view to, but if you navigate to without any path the default view will be shown.
If you don’t feel comfortable to show more of the code here (or if it is simply too much) you can contact me under my e-mail address shown on my Github Page or join me on slack then we might be able to figure out what is going wrong here.


It is a way to use your addon without View, only with components?

My question is because I wanna use the menu in other parts of the system, not only the main menu.



Thanks for the fast reply. I will open a ticket on github. I think creating a feature to use without View and navigation, will help more people to use your addon.


Since the Addon currently relies on the Navigator to do the instanciation and instanciation management and the navigating. Not using it will force you to replace it with something similar. There isn’t an easy way to do so but yes you can do it but you will loose feature like highlighting of the active item. If you are interested in a work arround or maybe even a feature that adds support for this usecase please open an issue on github so we can discuss the enhancement more thoroughly.

Hi on small devices like smartphone, the menu is hidden by default. It opens once you clock the menu button in the header bar. But when you choose a menu item, I expact the menu to automatically close. Now I’ve to close the menu by sliding it to the left of by clicking on the space next to the menu. It would be better that the menu is closed automatically once the user has chosen an item from the menu. Is this possible withe the currenct add on to configure this behaviour?

First of all thank you for reporting this issue. The good news is that
the issue is already fixed
, 0.9.20 won’t have this issue anymore.
Since I have some other changes currently in the pipeline it might take a little longer.

@all 0.9.20 will come with some API breaking changes sorry for the inconvinience. But since we are still not at v1.0 and the requested feautures required some further changes in the Builder which made it totally inaceptable to use.
Which is why I decided to split the AppLayoutBuilder into multiple builders to improve abstraction and maintainability. For the user also the usability will be improved by only offering the necessary functions for a specific usecase. I hope you will be happy with how the changes turned out.

great Addon,
is there any way to use SpringNavigator ?

Thank you.