Início > Programação > Conversão de Caracteres para Caixa Alta em JSF Input Texts

Conversão de Caracteres para Caixa Alta em JSF Input Texts

Há três maneiras de forçar a caixa alta das entradas de texto em Input Texts do Jsf.

1. Com CSS

<h:inputText ... style="text-transform: uppercase" />

Obs.: dessa forma, apenas a apresentação está em caixa alta. Se há regra de negócio para valor de caractere em caixa alta, ainda é necessária uma conversão no managed bean.

2. Com Javascript

<h:inputText ... onblur="value=value.toUpperCase()" />

3. Com FacesConverter

<h:inputText ... converter="upperCaseConverter">
    <f:ajax event="blur" render="@this" />
</h:inputText>

@FacesConverter("upperCaseConverter")
public class ToUpperCaseConverter implements Converter {

    @Override
    public String getAsString(FacesContext context, UIComponent component, Object value) {
        return (value != null) ? value.toString().toUpperCase() : null;
    }

    @Override
    public Object getAsObject(FacesContext context, UIComponent component, String value) {
        return (value != null) ? value.toUpperCase() : null;
    }
}

Conclusão

Particularmente, gosto mais da solução com FacesConverter mesmo sendo mais trabalhosa. Você deve escolher a solução que melhor se adapte ao negócio.

Referências

http://stackoverflow.com/questions/11021123/how-to-make-a-jsf-inputtext-field-upper-case-on-blur

Anúncios
  1. Nenhum comentário ainda.
  1. No trackbacks yet.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: