Erro java.util.NoSuchElementException - Resolvido

Tenho um combo que é populado dinamicamente.
seleciono o registro dele, e quando é dado o submit na página, ocorre esse erro:

...
Caused by: java.util.NoSuchElementException
	at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:130)
	at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:157)
	at javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:61)
	at javax.faces.component.SelectUtils.matchValue(SelectUtils.java:82)
	at javax.faces.component.UISelectOne.validateValue(UISelectOne.java:144)
...

Não entra no método do me botão, já ocorre o erro.
O que pode ser?

Cola teu código aqui por favor, assim fica mais fácil de ajudar.

O código que popula o combo:

  operadoresList = new ArrayList<SelectItem>();
        operadoresList.add(new SelectItem(null, "Selecionar"));
        List<UsuarioTO> usuarioTOList = UsuarioBD.getInstance().buscarOperadoresPorCNPJFilial(Long.valueOf(this.getNrCNPJ()), this.getNrFilial());
        for (UsuarioTO item : usuarioTOList) {
            operadoresList.add(new SelectItem(item.getCodUsuario(), item.getCodUsuario() + " - " + item.getNome()));
        }

O código do combo:

<h:selectOneMenu id="operadoresSel" value="#{movimentoretaguarda_abrirMovimentoCaixaRet.idOperador}">
	<f:selectItems value="#{movimentoretaguarda_abrirMovimentoCaixaRet.operadoresList}" />
</h:selectOneMenu>

Faz o teste para ver se assim funciona:

        operadoresList = new ArrayList<SelectItem>();
        operadoresList.add(new SelectItem(null, "Selecionar"));
        List<UsuarioTO> usuarioTOList = UsuarioBD.getInstance().
                                 buscarOperadoresPorCNPJFilial(Long.valueOf(this.getNrCNPJ()), this.getNrFilial());
        for (UsuarioTO item : usuarioTOList) {
            operadoresList.add(new SelectItem(item, 
                                        item.getCodUsuario() + " - " + item.getNome()));
        }

Olá Anderson,
mesmo com o código que você passou, continuou ocorrendo o mesmo erro.

Faz as modificações ai:

Teu método:

operadoresList = new ArrayList&lt;SelectItem&gt;(); List&lt;UsuarioTO&gt; usuarioTOList = UsuarioBD.getInstance(). buscarOperadoresPorCNPJFilial(Long.valueOf(this.getNrCNPJ()), this.getNrFilial()); for (UsuarioTO item : usuarioTOList) { operadoresList.add(new SelectItem(item, item.getCodUsuario() + " - " + item.getNome())); }

Tua página:

&lt;h:selectOneMenu id="operadoresSel" value="#{movimentoretaguarda_abrirMovimentoCaixaRet.idOperador}"&gt; &lt;f:selectItem itemLabel="Selecione" itemValue="Selecione" /&gt; &lt;f:selectItems value="#{movimentoretaguarda_abrirMovimentoCaixaRet.operadoresList}" /&gt; &lt;/h:selectOneMenu&gt;

Anderson,
Obrigada pela ajuda. Mesmo com a modificação que você sugeriu, o erro continuou.
Utilizei a tag do tomahawk abaixo e funcionou. Obrigada!

&lt;t:saveState id="saveState1"
					value="#{movimentoretaguarda_abrirMovimentoCaixaRet.operadoresList}" /&gt;

try { operadoresList = new ArrayList();
operadoresList.add(new SelectItem(null, “Selecionar”));
List usuarioTOList = UsuarioBD.getInstance().buscarOperadoresPorCNPJFilial(Long.valueOf(this.getNrCNPJ()), this.getNrFilial());
for (UsuarioTO item : usuarioTOList) {
operadoresList.add(new SelectItem(item.getCodUsuario(), item.getCodUsuario() + " - " + item.getNome()));
}
} catch (NoSuchElementException e) {
System.out.println (“Colocar aqui a escessão que você precisa!!!”)
}

//Só fiz o tratamento para esta excessão que esta aparecendo quando você tenta rodar o codigo, ela é unchecked e nao precisa ser tratada, pois ela deriva da classe RuntimeException.