quinta-feira, 21 de novembro de 2013

JSF: jquery.maskMoney.js

1º) Faça o download do plug-in:
   http://plugins.jquery.com/?s=money

2º) Coloque o arquivo no seu projeto
  /SeuProjeto/WebContent/resources/scripts

3º) Adicione o arquivo na sua página XHTML
  <h:head>
    <h:outputScript library="scripts" name="jquery.maskedinput-1.2.2.js" target="head" rendered="true"/>
    <h:outputScript library="scripts" name="jquery.maskMoney.js" target="head" rendered="true" />
  </h:head>

4º) Dentro do form onde está seu h:inputText. (Se não colocar no form terá problemas se utilizar ajax)
  <h:form prependId="false">
    <script type="text/javascript">
      $(document).ready(function() {
        setarMascara();
      });

     function setarMascara() {
       $("#SALARIO").maskMoney({showSymbol:false, symbol:"", precision: 2, decimal:",", thousands:"."});
     }
  </script>

  <h:outputLabel value="Salário" />
    <h:inputText value="#{funcionarioMB.historicoCargo.dbl_salarioflex}" 
        id="SALARIO" styleClass="valor">
     <f:convertNumber pattern="#,##0.00" locale="pt_BR" maxFractionDigits="2"/>
  </h:inputText>
 </h:form>

terça-feira, 12 de novembro de 2013

Formatar data em h:selectOneMenu / Formatar data em f:selectItems

<h:outputText value="Data" />
<h:selectOneMenu value="#{funcionarioMB.ausencia.int_ferias}">
   <f:selectItem noSelectionOption="true" itemValue="" />
   <f:selectItems value="#{funcionarioMB.funcionario.ferias}" var="ferias" itemValue="#{ferias.int_id}"      itemLabel="#{dateUtil.formatDate(ferias.dt_periodoaquisitivoinicio,'dd/MM/yyyy')}" />
</h:selectOneMenu>

 public static String formatDate(Date date, String pattern) {
     if (date == null) {
         return null;
     }

     if (pattern == null) {
         throw new NullPointerException("pattern");
     }

     Locale locale = FacesContext.getCurrentInstance().getViewRoot().getLocale();
     return new SimpleDateFormat(pattern, locale).format(date);
}    

terça-feira, 5 de novembro de 2013

org.hibernate.AssertionFailure: null identifier

Erro: org.hibernate.AssertionFailure: null identifier

Causa:

dao = new FuncionarioDao<Funcionario>(HibernateUtil.getSession(), Funcionario.class);
dao.refresh(cliente);

Correto:

dao = new FuncionarioDao<Funcionario>(HibernateUtil.getSession(), Funcionario.class);
dao.refresh(funcionario);