MyFaces 1.1.5 versus MyFaces 1.1.6

Serve de dica para quem acompanha o processo de evolução do MyFaces, o fato de que um sistema pode parar de funcionar com a atualização de versão. É claro que virão melhorias com a candidata a nova versão, porém poderá expor detalhes não observados anteriormente, e novas regras poderão entrar em rigor, o que poderá gerar algum tipo de transtorno.

Em caso pessoal, como descrito no titulo do post, vou expor os 2 exemplos em que tive problemas com a atualização:


1) Duplicated id:

Você não pode definir dois componentes com o mesmo Id mesmo que estejam englobados dentro de outro componente.

Ex.:

Você tem um inputHidden:



e em outro lugar, um datatable, ambos na mesma página:





2) Não se pode utilizar binding a uma referência de uma classe que não seja daquele componente, no MyFaces, mesmo que seja uma classe primária desta.

Ex.:

javax.faces.component.html.HtmlDataTable.



sendo que javax.faces.component.html.HtmlDataTable extends UIData, porém se colocares umaInstanciaDeUIData, o código não irá funcionar, em tempo de execução.

O exemplo acima é mais um que funciona no MyFaces 1.1.5 e já não irá funcionar em 1.1.6.

OBS: Esse não é um problema do framework Myfaces 1.1.6, se tu configurar o carregador (classloader) para que o Myfaces utilize seu HtmlDataTable referenciando a mesma localização de classes do UIData referenciado, esse erro nao irá ocorrer, portanto é um problema de configuração, mas que precisa ser observado na hora da migração de versão.

Nenhum comentário: