sábado, 24 de abril de 2010

Customizar/Personalizar Validador em JSF

Olá Pessoal,


O Framework JavaServer Faces oferece alguns validadores já prontos para serem usados, como por exemplo: validar o tamanho máximo ou mínimo de uma String ou validar somente campos numéricos, entretanto esses validadores são limitado. Para contornar este problema, o JSF nos permite que sejam desenvolvidos validadores customizados/personalizados de acordo com a regra de negócio.
Neste post, irei mostrar um exemplo de validador customizado que serve para validar o CPF, é um exemplo bem simples, mais o foco é mostrar como que implementa este recurso no JSF.
O exemplo foi desenvolvido utilizando a IDE Eclipse e o servidor TomCat.
Ao final do post, o projeto será disponibilizado para download, para quem quiser baixar e testar.


1. Passo: Estrutura do projeto:



2. Passo: Estrutura do arquivo web.xml:



3. Passo: Crie a Classe ManagedBean chamado de ValidaCPF no pacote managedbean, esta classe contém o atributo cpf com seu método get e set, o método validador do JSF, e um método que verifica se o CPF digitado é valido. A classe ficará de acordo com a imagem abaixo:


4. Passo: Estrutura do arquivo faces-config.xml:



5. Passo: Crie a página index.jsp, que conterá o formulário para digitar o CPF, de acordo com a imagem abaixo:


6. Passo: Crie uma página redirect.jsp, para redirecionar para o nosso formulário, nessa página basta acrescentar:



7. Passo: Executa o projeto, e verá a seguinte página:


8. Passo: Vamos testar, digitando um CPF inválido:


9. Passo: Vamos testar, digitando um CPF válido:


Bom galera, este foi um exemplo bem básico de como personalizar validadores no JSF.
Para quem quiser baixar o exemplo, clique aqui.
Qualquer dúvida, crítica ou sugestão, fico à disposição.

sábado, 10 de abril de 2010

Internacionalização com JSF

Olá Pessoal,


Um dos recursos que o Framework JavaServer Faces (JSF) oferece, é a internacionalização da aplicação, possibilitando que a mesma tenha vários idiomas.
Neste post irei mostrar um exemplo, utilizando os idiomas: (Português, Inglês, Alemão, Italiano e Francês), é uma pequena aplicação, mas pode ser tomada com base para desenvolver qualquer tipo projeto.
O exemplo foi desenvolvido utilizando a IDE Eclipse e o servidor TomCat.
Ao final do post, o projeto será disponibilizado para download, para quem quiser baixar e testar.


1. Passo: A aplicação foi estruturada de acordo com a imagem:



2. Passo: A primeira coisa que iremos fazer, é criar o ManagedBean com o nome InternacionalizacaoMB dentro do pacote managedbean, esta Classe é bem simples, possui 2 atributos, a Linguagem (Locale) e o País, com seus metodos gets e sets, o método mudarIdioma() é envocado através da ação de um link, nele é testado se o Locale possui um Pais, e logo é chamado o metodo mudarLocalidade() que altera o Locale, o ser retorno é null, ou seja, será redirecionado para ficar na mesma página.



3. Passo: Agora iremos criar os arquivos de propriedades que armazenarão os textos de cada idioma, cria um arquivo properties chamado mensagem, conforme a imagem abaixo:



4. Passo: Neste exemplo foram criados 6 arquivos de properties, em todos os arquivos as propriedade não podem ser alterados, apenas seus valores. Um arquivo com o idioma Inglês, ficará conforme a imagem:



5. Passo: No nosso arquivo de configuração do JSF, o faces-config.xml, temos que configurar o managedbean, Locale e o arquivo properties, no Locale, informei apenas o idioma Português e Inglês, mas pode deve ser colocado os Locale dos idiomas Alemão, Francês e Italiano.



6. Passo: Configuração do arquivo web.xml:



7. Passo: Agora criamos nossa página jsp, no exemplo deixei o nome de formulario.jsp, na primeira parte da página contém o menu para escolher o idioma.



Ainda na página formulario.jsp, iremos colocar um pequeno bloco que contém um form, conforme a imagem:



8. Passo: Veja agora como ficou o exemplo, usando o idioma Inglês:



Idioma em português:



Idioma em alemão:



Bom pessoal, este foi um exemplo bem simples, de como fazer a internacionalização da sua aplicação usando o produtivo Framework JSF.
Toda tradução, mostrado no exemplo, foi feita usando o Google Translate. :)
Para quem quiser baixar o exemplo, clique aqui.
Qualquer dúvida, crítica ou sugestão, fico à disposição.

sexta-feira, 2 de abril de 2010

Máscaras em formulários JSF, usando JQuery.

Olá Pessoal,


Neste post, irei mostrar um exemplo, de como criar máscaras em formulários JSF, para isto, iremos usar a biblioteca JQuery que facilita o desenvolvimento de scripts em páginas web, além desta biblioteca, usaremos uma outra, chamada de MaskedInput.
A biblioteca JQuery, pode ser baixada no site http://jquery.com/ e a MaskedInput pode ser baixada no site http://plugins.jquery.com/project/maskedinput.
Através da MaskedInput, conseguimos criar vários tipos de máscaras facilmente, sem a necessidade de conhecermos a fundo JavaScript.
Para este exemplo, mostrarei cinco tipos de máscaras (Telefone, Cep, CPF, RG e CNPJ), usando o JSF. Estas máscaras não restringe apenas para uso no JSF, também poderá ser usado em JSP, Struts, etc...
Ao final do post, o projeto será disponibilizado para download, para quem quiser baixar e testar.

1. Passo: Crie um página de formulário em JSF, como mostrado na figura abaixo, não esquece de importar os scripts:




2. Passo: Agora, só testar, vejam como ficou o exemplo:



Bom galera, este foi um exemplo de como usar máscaras em formulários JSF, através da biblioteca JQuery e MaskedInput.
Para quem quiser baixar o projeto, clique aqui.
Qualquer dúvida, crítica ou sugestão, fico à disposição.

Jabes Felipe RSS Feed Jabes Felipe