Seam – Getting started: Converters!
Marcos Sousa | May 16, 2008Na série de vídeo-aulas que eu fiz para o portal DevMedia sobre o Seam Framework, eu mostrei como podem ser usadas as anotações para registro de Conversores JSF. A notação é bastante simples. Imagine que você tenha um cadastro de produtos.
Veja o código do conversor:
@Name("productConverter")
@BypassInterceptors
@Converter(forClass=Product.class)
public class ProductConverter implements javax.faces.convert.Converter{
public Object getAsObject(FacesContext arg0, UIComponent arg1, String arg2) {
// Insira o código que transforme a string no objeto desejado (Product)
}
public String getAsString(FacesContext arg0, UIComponent arg1, Object arg2) {
// Insira o código que transforme o objeto desejado (Product) em String
}
}
Para registrar um conversor temos que usar as anotações:
@Name – Registra o conversor como um componente Seam
@BypassInterceptors – Indica que o conversor não deve sofrer ação dos intercetadores SEAM.
@Converter – Registra o conversor no contexto JSF, o atributo forClass indica a classe que iremos converter.
Também poderíamos cria o conversor usando um identificador, porém eu fiz alguns testes e para determinados comportamentos são gerados erros relacionados ao controle de estado. Se você também teve estas experiências, compartilhe-as!





