• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

J2EE Problem z przekazaniem Obiektu do ArrayListy

Aruba Cloud - Virtual Private Server VPS
0 głosów
212 wizyt
pytanie zadane 1 maja 2015 w Java przez Reflexip Początkujący (450 p.)

Siemka.

Mam pewien problem. Tworzę w ramach nauki, system logowania z możliwością rejestracji. Ogólnie servlet do logowania działa mi bez zarzutów kiedy loguję się na konto "admin, admin" tworzone automatycznie przy uruchamianiu aplikacji. Problem pojawia się kiedy przechodzę do rejestracji i chcę dodać nowego użytkownika do ArrayListy(to moja testowa baza danych) próbowałem samą ArrayListę jako pole obiektu klasy UsersManager przekazać do contextu w jednym servlecie i w servlecie rejestracji go odbierać. Próbowałem też przekazać cały obiekt UsersManager do contextu i go odebrać niestety bezskutecznie. Gdy wywołuję dajmy na to (users to nazwa zmiennej mojej ArrayListy) users.add(new User(request)) otrzymuję błąd :
"
java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901) at java.util.ArrayList$Itr.next(ArrayList.java:851)

"


Czy wyjątek Concurrent Modification Exception dotyczy tego że jeden obiekt w danym momencie jest obsługiwany przez kilka wątków ? Za nic nie mogę znaleźć gdzie to mogłoby się dziać i w czym leży problem. Dla ułatwienia dodaje link do całego projektu na Githubie żebyście mogli zobaczyć jak to mniej więcej u mnie wygląda. Liczę na pomoc kogoś z większym doświadczeniem w temacie, ja jestem trochę początkujący. Dodam że wszystko śmiga w eclipse na Jetty'm. Proszę o pomoc.

https://github.com/Reflexip/JAZ-2

1 odpowiedź

+1 głos
odpowiedź 2 maja 2015 przez Tomasz90 Nałogowiec (25,140 p.)
wybrane 2 maja 2015 przez Reflexip
 
Najlepsza
W klasie EngineSignUp masz foreacha z listą users a w tej pętli dodajesz coś do listy. To jest przyczyną tego wyjątku.

Zrób sobie jakąś metodę która przyjmuje pojedynczy obiekt User jako parametr, sprawdza jego parametry i zwraca booleana. Jak User jest ok to wtedy dodaje go listy.
komentarz 2 maja 2015 przez Reflexip Początkujący (450 p.)
No tak, w tym miejscu dodaje do listy nowego usera, pętla po prostu sprawdza czy istnieje już user o takim loginie, i sprawdza poprawność wprowadzonego hasla.

Sprawdzę twoim sposobem, dam znać co wyszło ; )
komentarz 2 maja 2015 przez Reflexip Początkujący (450 p.)
Dzięki pomogło. Mam teraz trochę inny problem tym razem z contextem ale to już inna historia.

 

Jeszcze raz wielkie dzięki za pomoc z tą ArrayListą ; )

Podobne pytania

+1 głos
2 odpowiedzi 675 wizyt
pytanie zadane 4 maja 2015 w Java przez Reflexip Początkujący (450 p.)
0 głosów
0 odpowiedzi 131 wizyt
pytanie zadane 13 lutego 2017 w Ogłoszenia, zlecenia przez Maja_Temrec Początkujący (330 p.)
0 głosów
0 odpowiedzi 456 wizyt

93,286 zapytań

142,286 odpowiedzi

322,313 komentarzy

62,606 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...