Мой сервис имел:
public List<PlayerEntity> getAllPlayers() {
return playerDao.readAll();
}
но это было неправильно, потому что когда я вызывал getAllPlayers () из таблицы
<p:dataTable id="data" value="#{myBean.allPlayers}"/>
Я получил от DAO обновленные данные, но все еще неупорядоченный. Вместо этого я создал поле List и метод для обновления List
private List<PlayerEntity> allPlayers = new ArrayList<PlayerEntity>();
public void updateAllPlayers(){
this.allPlayers = playerDao.readAll();
}
какой метод я запускаю при инициализации bean
public void setPlayerDao(PlayerDao playerDao) {
this.playerDao = playerDao;
updateAllPlayers();
}
и после добавления, удаления или изменения списка
public boolean createPlayer(PlayerEntity playerEntity) {
(...)
updateAllPlayers();
return true;
}
Теперь мой сервис имеет
public List<PlayerEntity> getAllPlayers() {
return this.allPlayers;
}
и это решило мою проблему с сортировкой данных в таблице Primefaces.