Fala pessoal,
Seguinte, estava utilizando a versão 3.4 do primefaces até o mês passado, e resolvi atualizar para a versão 3.5. Só que, após fazer isso, notei que algumas telas da minha aplicação passaram a dar NullPointerException. Ao investigar mais a fundo, descobri que é um caso bem especifico. Por exemplo:
<p:panel rendered="#{testMBean.dataLoaded}">
<ui:repeat value="#{testMBean.data}">
...
</ui:repeat>
</p:panel>
O código é simples, apenas se os dados tiverem sido carregados eles são exibidos dentro do painel. Até a versão 3.4 isso funcionava sem problemas. Agora na versão 3.5, o código acima estoura um NullPointerException dentro do método getData(), mesmo com o rendered=false.
O engraçado é que esse problema só ocorre com o uso do ui:repeat. Se eu trocar o ui:repeat por datable como abaixo, tudo funciona ok.
<p:panel rendered="#{testMBean.dataLoaded}">
<p:dataTable value="#{testMBean.data}">
...
</p:dataTable>
</p:panel>
Pesquisei o changelog da versão 3.5 e não encontrei nenhuma mudança relevante para este problema.
Alguém sabe o que pode ser o problema? Será que eu não estou enxergando alguma coisa?