JSF: Como validar arrays?

editado por mim mesmo.

Se o nrAptos ta mapeado em algum campo do seu jsp, realmente ele nao foi atualizado, pois o processo de validação é antes do updateModel.

O que você pode fazer é pegar o valor ( que foi enviado por request ) desse cara, por exemplo:

Quantidade de Apartamentos: <h:inputText id="quantidadeApartamentos" value="#{ProcessoCompra.nrAptos}"/>
// voce varre o viewroot e pega o componente com o server id igual a "quantidadeApartamentos"
EditableValueHolder qntApartamentos = /*...*/;
String quantidade = qntApartamentos.getSubmittedValue();
// nrAptos = Integer.parseInt(quantidade);

Essa é uma maneira de você fazer sua validação.
Espero ter ajudado, flwz.