Table removeContainerProperty does not refresh rendered cache

Hi!

Old Vaadin 6 made: if (removed) this.resetPageBuffer();
In Vaadin 7 I must call refreshRowCache() manually (

I’ve posted bug
http://dev.vaadin.com/ticket/12980

Hi,

I guess the idea is that your container should implement PropertySetChangeNotifier and let the Table know that the property set has changed, which would then trigger refresh. On the other hand, it seems that this is checked in addContainerProperty method so it’s not very logical to do the check in the remove method.

Vaadin containers provided with the framework should notify of property set changes so I’m guessing you have some custom/add-on container? In that case a quick workaround would be to implement PropertySetChangeNotifier there.

I call removeContainerProperty for Table, not for container. Bahaviour changed from Vaadin 6.

Any container-related calls to Table always delegate to the underlying container. If you have not set any container for the Table, it will use an IndexedContainer. IndexedContainer should in this case fire a propert set change event, eventually calling Table.containerPropertySetChange method, where the second-last line is a call to resetPageBuffer().

So even if you call the method on Table, the container handles it.