Bom tarde pessoal,
Estou com um problema grosso no JSF, o famoso: “java.lang.IllegalStateException: Duplicate component ID”.
Creio que isso seja um bug do framework, em alguns momentos este erro aparece, principalmente em criação de conteúdo dinâmico.
Quando cria-se a árvore é criado alguns componentes no server “O framework cria por conta própria”. O fato é: Ele se perde com os próprios componentes que cria gera uma exception que em cascata gera erro de Javascript(No cliente) impossibilitando execução da iteração do cliente.
A forma de gerenciamento do JSF é muito ruim, eles poderiam ter inventado outra forma de gerenciar este tipo de ligação!
Detalhes do erro:
1º Acesso - OK
2º Acesso - Erro "Duplicate component ID ‘form_global:_id58’ found in view."
3º OK
4º OK
5º OK
6º Acesso - Erro “Duplicate component ID ‘form_global:_id80’ found in view.”
Verifique que os ids são diferentes a cada refresh da página
Este erro acontece aleatoriamente, pode não ocorre ou ocorrer constantemente.
Os componentes gerados por mim possuem seu próprio id, conforme abaixo:
<c:forEach var="bean" items="#{mgr.listaBean}">
<h:commandLink actionListener="#{mgr.acessarItem}" immediate="true" value="#{bean.value}" id="#{bean.id}" rendered="true"/>
</c:forEach>
Onde o bean.id é composto da seguinte forma: xxxChaveRegistro, ex: abc0001
Realmente, estou garantindo um único ID por componente renderizado!!!
Obrigado pela atenção!!!