Wait. So you do have an example?

I don't follow how it would work because the constructor for CompositeCell takes in a list of HasCell objects and if the value provider for a column comes from a PropertyAccess interface implementation there's no way to get a list of HasCell objects.

Unless....you had your bean define a setter that returns a list of HasCell objects which then tightly couples your POJOs to a UI framework and violates the separation of concerns.

A POJO needs to be completely and totally independent of any framework and should not be doing any business logic or providing the data in anything other than a standard way. It should not be massaging data for use in a UI.