terça-feira, 22 de julho de 2014

Como usar mascara em layouts com Bootstrap.




Ambiente:
Facelets
JSF Mojarra 2.0.6
PrimeFaces 3.5.4
Bootstrap v2.3.2

Para inclusão de mascaras de campos faça da seguinte forma:

Primeiramente devemos fazer o download da biblioteca maskedinput.js.
Depois do download salve na pasta dentro do projeto onde desejar.
Para o exemplo abaixo foi saldo em "Webcontext\js".
Incluir a linha abaixo em seu html.
<script src="${request.contextPath}/js/jquery.maskedinput.js"></script>

Em cada página deve ser usada a linha:
<script type="text/javascript">
jQuery(function($){
$("#ddd1").mask("99");
$("#telefone1").mask("9999-9999");
$("#cep").mask("99999-999");
$("#cpfAssina").mask("999.999.999-99");
});
</script>
Sendo que #cpfAssina esta referenciando um input por ID = "cpfAssina".
<p:inputText id="cpfAssina" value="#{cadastroEscolaCtrl.escola.cpfAssina}" label="CPF" required="true" pt:placeholder="CPF" styleClass="input-block-level"/>

Ainda vale a pena lembrar que para que seja possível nomear os componentes JSF sem que percam os IDS, é necessário acrescentar no form o atributo prependId="false".
Exemplo:
<h:form styleClass="form-login form-wrapper" prependId="false">

Simples assim.

Abraços...

Acentuação com JSF + Facelets


Bem comecemos;

Ambiente:
Facelets
JSF Mojarra 2.0.6
PrimeFaces 3.5.4





Sendo assim teremos um template:
Neste template é importante conter as linhas:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >

Também incluir a linha abaixo no meta do template:
<meta charset="utf-8"></meta>

Já as páginas que compõem o layout devem conter a linha:

<ui:fragment xmlns="http://www.w3.org/1999/xhtml"> 
já para a composição:

<ui:composition template="/faces/templates/template.xhtml"  xmlns="http://www.w3.org/1999/xhtml">

Observação:
Caso o interesse seja por iso-8859-1, basta mudar de UTF-8 para ISO-8859-1.

Simples assim:

Abraços...