Vaadin application with customcomponent doesn't show

Hallo,
First let congratulate the Vaadin team for such an innovative project.

I’ve been testing the use of Vaadin within Liferay, but found the following:
-my liferay portlet get rendered as I build all the components within the init method:

public void init() {
		Window window = new Window();

		try{
			VerticalLayout root = new VerticalLayout();

			Label label = new Label("Country: CM ");

                       root.addComponent(label);

                      window.setContent(root);
		}catch(Exception e){
			logError(e);
		}

		setMainWindow(window);
	}

-but when used wrapped within a composite component, nothing shows on the Liferay portlet:
Application:


public void init() {
		Window window = new Window();

		try{
			VerticalLayout root = new VerticalLayout();

			SchoolListView list = new SchoolListView();
			root.addComponent(list);
			root.setEnabled(true);

			list.setEnabled(true);
			list.setVisible(true);

			window.setContent(root);

			root.setSizeFull();

			window.setHeight(300f, AbstractComponent.UNITS_PIXELS);
			window.setWidth(300f, AbstractComponent.UNITS_PIXELS);

		}catch(Exception e){
			logError(e);
		}

		setMainWindow(window);
	}

Composite Component:

public SchoolListView() {
        Label label = new Label("Country: CM ");

        setCompositionRoot(label);
	}

I will appreciate any hint as to what causes the issue.
Thanks

AWESOME!

The last time I so enjoyed programming was 10 years ago (I finished writing my first virtual machine in C).

It works!

The solution is as follows (Hope it saves someone two days of searching):

When using Composite Components (subclasses of CustomComponent)
within Liferay be carefull to:

-add the top composite object directly to the main window using

Window.addComponent(myTopCompositeObect);

-always set the root child component (CustomComponent.setCompositeRoot) to a Layout of the composite component: the root child (according to the doc) will not be VISIBLE.

-when developing a portlet NEVER USE THE ABSOLUTE LAYOUT! This will be translated (literally) as POSITION:ABSOLUTE in the resulting HTML.

Anyway GOOD WORK guys!

Vaadin is giving a new breath to the Java language.

NB: I will buy an enterprise license as soon as possible.

By the way, what the #$!& does Vaadin means? Anyone?


This.