IndexOutOfBoundException для добавления элементов в ComboBox с ошибками только внутри java

Я пытаюсь добавить элементы в свой ComboBox, но у меня возникает следующая ошибка:

Exception in thread "JavaFX Application Thread" java.lang.IndexOutOfBoundsException: Index: 9, Size: 9
at java.util.ArrayList.rangeCheck(ArrayList.java:653)
at java.util.ArrayList.get(ArrayList.java:429)
at com.sun.javafx.collections.ObservableListWrapper.get(ObservableListWrapper.java:89)
at com.sun.javafx.collections.VetoableListDecorator.get(VetoableListDecorator.java:306)
at javafx.scene.Parent.layout(Parent.java:1091)
at javafx.scene.Scene.doLayoutPass(Scene.java:552)
at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:2397)
at com.sun.javafx.tk.Toolkit.lambda$runPulse$30(Toolkit.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.tk.Toolkit.runPulse(Toolkit.java:354)
at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:381)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:510)
at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:490)
at com.sun.javafx.tk.quantum.QuantumToolkit.lambda$runToolkit$404(QuantumToolkit.java:319)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191)
at java.lang.Thread.run(Thread.java:745)

Смотрите, что никакая ошибка не приводит к моей реализации, только внутренняя ошибка. Это мой код:

irParaCondicao.setOnFinished(event -> {
    processos.add(processoEmExecucao.getValue());
    processoEmExecucao.set(null);
});

processos.addListener((ListChangeListener<? super Processo>) c -> {
    if (c.next()) {
        validacaoD.getItems().clear();
        validacaoD.getItems().addAll(processosDeD);
    }
});

Я уже пытаюсь использовать этот код внутри javafx Thread, но проблема не решается. И я уже безуспешно смотрел про IndexOutOfBoundsException при обновлении ListView в JavaFX . Это происходит только при первом включении. Кто-нибудь может мне помочь?

I already try to use this code inside javafx Thread - не похоже. Вам нужно найти все места, где изменен processos, убедитесь, что никто из них находится в потоке приложения, отличном от JavaFX.
Jai 22.05.2018 03:33

Похоже, вы пытаетесь get элемент 9 из Arraylist, у которого нет 10 элементов. Для получения дополнительной помощи отправьте дополнительный контекст минимальный воспроизводимый пример. Также отметьте строку, в которой возникает ошибка, комментарием, чтобы мы знали.

c0der 22.05.2018 04:57

Недостаточно информации для определения проблемы. Без минимальный воспроизводимый пример мы не сможем помочь. Я предполагаю, что один из элементов будет удален из processos во время прохода макета, что приведет к исключению.

fabian 22.05.2018 14:50
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
3
54
0

Другие вопросы по теме