ebarros 7 de abr. de 2009
Estranho esse comportamento, normalmente acontece de “mexer” nos elementos de uma lista, vetor, objeto, qdo vc manipula outra lista, vetor, objeto, e eles estao na mesma posição da memória(retirando ou inserindo valores), se o seu vetor nao estah nulo no momento da interação, ou seja, quando o laço eh percorrido, nao era para ele estar nulo após ter interagido todos os elementos.
Mas tenta fazer assim:
for ( Iterator <? > iter = arrayLancamentosMOVincVO . iterator ();(( Iterator < ?> ) iter ). hasNext ();){
LancamentosMOVinculosVO lancamentosMOVincVO = new LancamentosMOVinculosVO ();
lancamentosMOVincVO = ( LancamentosMOVinculosVO ) iter . next ();
for ( Iterator <? > iterator = arrayLancamentosMOVO . iterator ();(( Iterator < ?> ) iterator ). hasNext ();) {
LancamentosMOVO lancamentoMOVO = new LancamentosMOVO ();
lancamentoMOVO = ( LancamentosMOVO ) iterator . next ();
if ( lancamentoMOVO . getLancCodigo (). equals ( lancamentosMOVinculosVO . getLancCodigo ())){
lancamentosMOVinculosVO . setLancPrcsDataBaixa ( lancamentoMOVO . getLancDTBaixa ());
}
}
}
Guilherme_Gomes 7 de abr. de 2009
O seu código parece correto, da uma debugada, veja se os arrays estao preenchidos e se tudo esta funcionando como o esperado.
Outra coisa, você está criando um LancamentosMOVO a toa, tem um new que não é usado pois você da o iterator.next() em seguida.
thaiscf 7 de abr. de 2009
Obrigada pela ajuda!!
Descobri o que está acontecendo. Na verdade foi uma distrãção minha, olhem só:
…
for (Iterator iter = arrayLancamentosMOVincVO.iterator(); iter.hasNext() {
LancamentosMOVinculosVO lancamentosMOVincVO = (LancamentosMOVinculosVO) iter.next();
for ( Iterator iterator = arrayLancamentosMOVO . iterator (); iterator . hasNext ();) {
LancamentosMOVO lancamentoMOVO = ( LancamentosMOVO ) iterator . next ();
if ( lancamentoMOVO . getLancCodigo (). equals ( lancamentosMOVinculosVO . getLancCodigo ())) {
[ b ] lancamentosMOVinculosVO [ /b ] . setLancPrcsDataBaixa ( lancamentoMOVO . getLancDTBaixa ());
}
}
}
…
Estou setando em outro VO o valor e não no VO do arrayLancamentosMOVincVO :?
O do array é lancamentosMOVincVO e estou setando no lancamentosMOVinculosVO.
O nome é pareceido, por isso a confusão…
Até
Tks!