TreeTable component

Due to popular demand, I’ve released the sources to a TreeTable component I made.

I’ve created a new interface that adds a collapsing feature to Containers. The ContainerCollapsible, as it’s came to be called, extends Container.Hierarchical and adds two methods: setCollapsed(itemId, isCollapsed) and isCollapsed(itemId). The meaning of many inherited methods are changed, and they are re-documented in the new interface.

Since Table requires its container to be at least Container.Ordered, I’ve written a new container (because IndexedContainer was way too complicated to tweak for my purposes) that implements both Container.Ordered and ContainerCollapsible.

Please keep in mind that this isn’t a part of any official Toolkit widgetsets, it’s just something I’ve done. If Toolkit (or, should I say, ) ever will come with a TreeTable component, it most probably won’t be this one, because some design issues, and the fact that it’s a forked version of the Table component as it was on 5.3.0 RC9.

You can
browse the source online
. To get your own SVN checkout, you can get your own copy from

There is one known bug relating to rendering a expand/collapse-icon in the visually last item, if it’s set as the child of the previous item. Other bugs most probably exist, but they haven’t been looked for. While bug reports are always welcome, they will be fixed in a very uncertain schedule without any guarantees. Naturally, any patches are more than welcome, as long as you agree to release them with an identical license as the other code is (Apache 2.0, copyrighted by IT Mill).

Excellent Henrik! Looking forward to hear comments from other users aswell.

Excellent! Great!!!

Is there a way to use this component in portlets (Liferay)?

Thanks a lot!

Can’t imagine any reason why not, TreeTable is no different to any other component when it comes to Liferay portlets…

Still, you got to checkout the component from and compile your own widgetset. If you bumb into trouble, forums will help you out for sure.

I’ve updated the component a bit. There were a lot of bugs in the Container, which caused all kinds of havoc. Unfortunately, the component patches themselves are just fixes to get it to compile in 6.1. So, it’s still a fork from Toolkit 5.3.0rc9.

Hope this brings joy to someone.

Most definetly! I already had checked out the source code to make the changes myself, but now that you’ve done, I don’t need to :grin:

Thank you, Henrik!

Can any body point me out how to integrate this TreeTable in my existing project? Is there any jar available ?

Please provide me the complete steps.

My project folder structure is as of maven like src\main\webapp\WEB-INF not the Vaadin’s default project structure.

Thanks in advance,

Unfortunately I’ve abandoned this component, and it’s served as-is. Since the latest update is for 6.1, there’s no guarantees that it will even work with later versions (and probably won’t). There’s also no Jar available, since it’s not a Directory add-on.

I’m sorry about this.

Vaadin, however, has planned to release an official tree table in
, due in two months. See ticket

for the 6.4 compatible TreeTable available in Vaadin Directory

Hi ,

How to add checkbox to TreeTable,

If you have sample code, please give me.



is there a way to expand a node in the TreeTable programmatically? I want to set the selection and expand the path to this element.