Vaadin Grid with CallbackDataProvider always throws java.lang.IndexOutOfBoundsException:

I found the reason! The CallbackDataProvider has to implement two methods, one providing a count of all available items and the other that allows the widget to request a chunk of data. In my case - due to a wrong argument passed to the underlying filtering done by the service that provides the count as well as the data - the count did not always match the number of items actually retrievable. That mismatch obviously caused the widget to throw these IndexOutOfBounds exceptions. My bad...