У мене є сторінка JSF, на якій відображається список файлів журналів Glassfish. Я використовую ліниве завантаження для пагінації. Я зберігаю список імен файлів журналів на Java List.
private List<directoryListObj> dataList = new ArrayList<>();
dataList = dataList.subList(firstRow, lastRow);
І тут проблема. Наприклад, у мене до каталогу 35 файлів. Коли я це роблю
dataList = dataList.subList(5, 15);
Це чудово працює. Але коли я роблю це:
dataList = dataList.subList(30, 38);
Я отримую помилку з помилковим індексом, оскільки хочу отримати індекс поза списком. Як я можу, наприклад, повернути елементи списку від 30 до 35? Я хочу, якщо я хочу отримати індекс від 30 до 40, але якщо є лише 35 індексів, щоб отримати лише 5.
dataList = dataList.subList(30, 38 > dataList.size() ? dataList.size() : 38);