Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Criando conversores

Olá a todos, tudo certo? No capítulo 5, vimos sobre os validadores e os conversores do JSF, além de aprender a renderizar mensagens do próprio JSF, bem como customizar nossas próprias mensagens. Vimos também, que podemos criar um validador personalizado para validar o ISBN de um livro. Então aqui vai a minha dúvida. Da mesma forma que podemos criar nossos validadores através de métodos nos managed beans, será que podemos criar nossos próprios conversores? Se sim, como fazer para criar um conversor personalizado? Abraços!

3 respostas
solução!

Fala Guido,

É plenamente possível criar um conversor customizado:

Etapa 1: criar uma classe do conversor: UrlConverter.java

public class UrlConverter implements Converter {
...
}

Etapa 2: Implemente métodos da interface do conversor: UrlConverter.java

public class UrlConverter implements Converter {

   @Override
   public Object getAsObject(FacesContext facesContext,
      UIComponent component, String value) {
      ...
      UrlData urlData = new UrlData(url.toString()); 
      return urlData;
   }

   @Override
   public String getAsString(FacesContext facesContext, 
      UIComponent component, Object value) {
      return value.toString();
   }
}

Registre:

@FacesConverter("br.com.alura.UrlConverter")
public class UrlConverter implements Converter {
}

Etapa 3: Use o conversor na página JSF

<h:inputText id = "urlInput" value = "#{userData.data}" label = "URL" >
   <f:converter converterId = "br.com.alura.UrlConverter" />
</h:inputText>
Olá a todos, Tudo bem?
Agradeço pela resposta!
Consegui implementar.

Perfeito Guido, qualquer dúvida estamos a disposição :)