Table content refresh problem

I have implemented my table by using the Lazyloading,
In DAO which sends the request:

    public List<Record> find(final LazySearchCriteria criteria, final int offset, final int limit, final List<OrderByColumn> sorts)
 return new ArrayList<>(mySingleton.getInstance().getClient().search(token, tmpl, offset, limit, sortString).records);

And in the container class, it calls the DAO to refresh the result

public class LazyBeanContainer extends BeanContainer
private List<?> findItems(int startIndex, int numberOfIds)
        List<?> items;
        items = dao.find(criteria, startIndex, numberOfIds, orderByColumns);
        return items;

When i click on the header of the column, it ask the result table to set the new container data source, and the request is sent with success. the result is changed.
But the visible content is not refreshed.
It will refresh only when i drag a column to change the columns order.
Can you tell me how to force the refresh, please?