Tratamento de Exception  XML
Índice dos Fóruns » Java Enterprise Edition (Java EE)
Autor Mensagem
Silveira.Marcelo
Debugger

Membro desde: 28/01/2009 20:09:15
Mensagens: 66
Offline

Olá Comunidade.


Estou com um pequeno problema e gostaria de dividir com vcs, seguinte:


Eu tenho um form onde insiro dados para registrar uma enquete, ou seja, a pergunta e as alternativas a serem votadas. Até ai tudo bem, insiro a pergunta e a primeira alternativa, só que, se a alternativa que o usuário(que no meu caso caso é um gerente) não for a desejada e ele resolver remover, é ai que ocorre o problema.


eis o código da enquete_edit:




agora o código do meu Managed Bean:




Sendo rápido na explicação, ele consegue remover o meu objeto da lista ItemEnquete, porém ele volta para o for(ItemEnquete item: enquete.getRespostas()), quando ocorre a seguinte exception:

16:21:55,812 ERROR [application] java.util.ConcurrentModificationException
javax.faces.el.EvaluationException: java.util.ConcurrentModificationException.


Alguém já pegou essa exception na carreira de desenvolvedor Java e se puder , como fez para solucionar esse problema?

Estive lendo a documentação e, isso ocorre pq tem um método interno na classe Interator que quando um objeto não tiver referência ou instância nenhuma dentro de uma lista ele manda essa excessão.

Ficarei grato se pudermos discutir sobre a solução para esse problema.

Um abraço comunidade.

Marcelo Soares

Java Web Developer
Bacharel em Sistemas de Informação
Rumo a SCJP
[MSN]
Giulliano
GUJ Master
[Avatar]

Membro desde: 14/11/2006 19:29:38
Mensagens: 1627
Localização: São Paulo
Offline

vc não pode remover um item de uma lista enquanto esta percorrendo pela mesma..

um conselho seria vc criar uma cópia dela para fazer a interação e depois remover os itens da lista original:




Oracle Certified Master, Java EE 5 Enterprise Architect
Oracle Certified Professional Java Programmer
GiuLLianO MoRRoNi




<UnTouChAbLe>
[Email] [WWW] [MSN]
Silveira.Marcelo
Debugger

Membro desde: 28/01/2009 20:09:15
Mensagens: 66
Offline

Valeu Giuliano


Vou tentar fazer isso e depois te mando um feedback. Um abraço

Java Web Developer
Bacharel em Sistemas de Informação
Rumo a SCJP
[MSN]
sergiotaborda
GUJ Expert
[Avatar]

Membro desde: 22/03/2005 20:57:48
Mensagens: 3433
Offline

Giulliano wrote:vc não pode remover um item de uma lista enquanto esta percorrendo pela mesma..

um conselho seria vc criar uma cópia dela para fazer a interação e depois remover os itens da lista original:




Vc pode remover enquanto itera,mas tem que usar o iterator explictiamente.


This message was edited 1 time. Last update was at 23/09/2009 10:07:46


Criando sua própria API de Validação



Blog do MiddleHeaven
[WWW]
 
Índice dos Fóruns » Java Enterprise Edition (Java EE)
Ir para:   
Powered by JForum 2.1.8 © JForum Team