Bonjour, j'essaie d'afficher une liste de données mais je n'y arrive et j'ai ce message d'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
java.util.ConcurrentModificationException
 
    java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
    java.util.AbstractList$Itr.next(AbstractList.java:343)
    com.maison.enfant.gestion.horaire.action.planning.CompteurMoisPersonneAction.searchCompteurByPersonneAndMonthAndYear(CompteurMoisPersonneAction.java:228)
Si je suis dans le "détail" ,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
if("1".equals(this.globalSearch)){
Je dois mettre à jour mes données

sinon, je dois les afficher

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
 
public void searchCompteurByPersonneAndMonthAndYear(Integer idPersonne, String moisAchercher, String anneeAchercher, String globalSeach){
	List<PersonneCompteurSemaineDisp> listPersComptaRecup  = new ArrayList<PersonneCompteurSemaineDisp>(); //Liste utilise pour récupérer les valeurs détaillé
	List<PersonneCompteurSemaineDisp> listPersComptaTotal   =  new ArrayList<PersonneCompteurSemaineDisp>();//Liste utilise pour récupérer les totaux 
	List<MoisDispDTO> listMoisParPersonne = new ArrayList<MoisDispDTO>();
 
 
	List<PersonneCompteurSemaineDisp> listPersonneCompteurSemaine = this.compteurService.getListCompteurbyIdPersonneAndMountAndYear(idPersonne, moisAchercher, anneeAchercher, globalSeach);
 
 
 
	//Pour insérer les donnée dans mois display 
	MoisDispDTO moisDisp = new MoisDispDTO();
	moisDisp.setIdPers(idPersonne);
	moisDisp.setNomMois(moisAchercher);
	moisDisp.setAnnee(anneeAchercher);
 
	//System.out.println("searchCompteurByPersonne");
	//List<PersonneCompteurSemaineDisp> listPersonneCompteurSemaine = this.compteurService.getListCompteurbyIdPersonneAndYear(nomPersonne, prenomPersonne, anneeAchercher);
 
	if (listPersonneCompteurSemaine.size() > 0){
		for(PersonneCompteurSemaineDisp persSemaineCompt : listPersonneCompteurSemaine){
			PersonneCompteurSemaineDisp persCompteurSem = new PersonneCompteurSemaineDisp(); 
			PersonneCompteurSemaineDisp persCompteurTotal= new PersonneCompteurSemaineDisp(); //Utilise pour récupérer les valeur totals
 
			persCompteurSem.setNomPersonne(persSemaineCompt.getNomPersonne());
			persCompteurSem.setPrenomPersonne(persSemaineCompt.getPrenomPersonne());
			persCompteurSem.setDateDebutSem(persSemaineCompt.getDateDebutSem());;
			persCompteurSem.setDateFinSem(persSemaineCompt.getDateFinSem());;
			persCompteurSem.setNumeroSemaine(persSemaineCompt.getNumeroSemaine());
			persCompteurSem.setLibelleJour(persSemaineCompt.getLibelleJour());
 
 
			if("00:00".equals(persSemaineCompt.getDureeTravailJour()) ){
				persCompteurSem.setDureeTravailJour("Repos");
			}else{
				persCompteurSem.setDureeTravailJour(persSemaineCompt.getDureeTravailJour());
			}
 
			//Pour afficher les absences en lettre et non en chiffre
			if("1".equals(persSemaineCompt.getAbsenceOuConge())){
				persCompteurSem.setAbsenceOuConge("Congé Annuel");
			}
			if("2".equals(persSemaineCompt.getAbsenceOuConge())){
				persCompteurSem.setAbsenceOuConge("Congé Trimestriel");
			}
			if("4".equals(persSemaineCompt.getAbsenceOuConge())){
				persCompteurSem.setAbsenceOuConge("Ferie");
			}
			if("5".equals(persSemaineCompt.getAbsenceOuConge())){
				persCompteurSem.setAbsenceOuConge("Maladie");
			}
 
			persCompteurSem.setEstFerie(persSemaineCompt.getEstFerie());
			persCompteurSem.setEstCT(persSemaineCompt.getEstCT());
			persCompteurSem.setEstCAnnuel(persSemaineCompt.getEstCAnnuel());
			persCompteurSem.setEstCMaladie(persSemaineCompt.getEstCMaladie());
			persCompteurSem.setEstCAnciennete(persSemaineCompt.getEstCAnciennete());
			persCompteurSem.setEstCRecup(persSemaineCompt.getEstCRecup());
			persCompteurSem.setEstExcept(persSemaineCompt.getEstExcept());
			persCompteurSem.setEstFamiliaux(persSemaineCompt.getEstFamiliaux());
 
			//setDureeTotalTrav(persSemaineCompt.getDureeTotalTrav());
 
			//Pour récupérer le total de la durée travaillé et du nombre de jour d'absence par absence
			if(persSemaineCompt.getDureeTotalTrav() != null && !"".equals(persSemaineCompt.getDureeTotalTrav())){
 
				System.out.println("persSemaineCompt.getDureeTotalTrav() : "+persSemaineCompt.getDureeTotalTrav());
				persCompteurTotal.setDureeTotalTrav(persSemaineCompt.getDureeTotalTrav());
				persCompteurTotal.setNbJourFerie(persSemaineCompt.getNbJourFerie());
				persCompteurTotal.setNbCongeTri(persSemaineCompt.getNbCongeTri());
				persCompteurTotal.setNbCongeAnnuel(persSemaineCompt.getNbCongeAnnuel());
				persCompteurTotal.setNbCongeMaladie(persSemaineCompt.getNbCongeMaladie());
				persCompteurTotal.setNbCongeAnciennete(persSemaineCompt.getNbCongeAnciennete());
				persCompteurTotal.setNbCongeRecup(persSemaineCompt.getNbCongeRecup());
				persCompteurTotal.setNbCongeExceptionnel(persSemaineCompt.getNbCongeExceptionnel());
				persCompteurTotal.setNbCongeParentaux(persSemaineCompt.getNbCongeParentaux());
			}
 
			//On ajoute le total dans la table moisDisp 
 
 
 
 
 
			String mode = "save";
 
 
 
			if(persSemaineCompt.getDureeTotalTrav() != null && !"".equals(persSemaineCompt.getDureeTotalTrav())){
 
				moisDisp.setTotalTravMois(persSemaineCompt.getDureeTotalTrav());
				moisDisp.setNbFerie(persSemaineCompt.getNbJourFerie());
				moisDisp.setNbCt(persSemaineCompt.getNbCongeTri());
				moisDisp.setNbCannuel(persSemaineCompt.getNbCongeAnnuel());
				moisDisp.setNbMaladie(persSemaineCompt.getNbCongeMaladie());
				moisDisp.setNbCancien(persSemaineCompt.getNbCongeAnciennete());
				moisDisp.setNbRecup(persSemaineCompt.getNbCongeRecup());
				moisDisp.setNbExcep(persSemaineCompt.getNbCongeExceptionnel());
				moisDisp.setNbFamil(persSemaineCompt.getNbCongeParentaux());
 
 
				System.out.println("this.globalSearch "+this.globalSearch);
				//On ne fait les mise à jour que si c'est du détaille pas en globale
				if("1".equals(this.globalSearch)){
 
					int idMoisCherche = this.moisDispService.getIdMoisDispDTObyIdPersonneMoisAndYear2(idPersonne, moisAchercher, anneeAchercher );
					System.out.println("idMoisCherche : "+idMoisCherche);
 
					if(idMoisCherche != 0){
						moisDisp.setIdMois(idMoisCherche);
					}
					this.moisDispService.saveOrUpdateMoisDispDTO(moisDisp);
				}
			}
 
			listPersComptaRecup.add(persCompteurSem);
			listPersComptaTotal.add(persCompteurTotal);
		}
 
 
	}//fin du for this.compteurService
 
	if("2".equals(this.globalSearch)){
		listMoisParPersonne = this.moisDispService.getListMoisDispDTObyIdPersonneAneYear(idPersonne, anneeAchercher);
		if (listMoisParPersonne.size() > 0){
			for(MoisDispDTO moisDispDto : listMoisParPersonne){		
				MoisDispDTO moisDis = new MoisDispDTO(); 
 
				moisDis.setNomMois(moisDispDto.getNomMois());
				moisDis.setTotalTravMois(moisDispDto.getTotalTravMois());
				moisDis.setAnnee(moisDispDto.getAnnee());
				moisDis.setNbFerie(moisDispDto.getNbFerie());
				moisDis.setNbCt(moisDispDto.getNbCt());
				moisDis.setNbCannuel(moisDispDto.getNbCannuel());
				moisDis.setNbMaladie(moisDispDto.getNbMaladie());
				moisDis.setNbCancien(moisDispDto.getNbCancien());
				moisDis.setNbRecup(moisDispDto.getNbRecup());
				moisDis.setNbExcep(moisDispDto.getNbExcep());
				moisDis.setNbFamil(moisDispDto.getNbFamil());
 
 
				listMoisParPersonne.add(moisDis);
				System.out.println("moisDis ^^^Annee ^^^ : "+moisDis.getAnnee());
 
 
 
			}
		}
		this.listReacpMoisTotal = listMoisParPersonne;
	}
 
	this.listPersonneCompteurMois = listPersComptaRecup;
	this.listPersonneCompteurTotal = listPersComptaTotal;
 
 
}
Malheureusement je ne vois pas d'ou peut bien provenir le problème.

Merci de votre aide