Formateo de fechas y horas por separado

En algunas ocasiones deseamos mostrar las fechas por ejemplo en columnas de un datatable u otro componente a formatos específicos.

podríamos usar

 <p:outputLabel value="#{msg['field.fechapartida']}" />
   <p:calendar  disabled="true"  size="8"                                  
                style="background-color: grey;"
                pattern="dd/MM/yyyy" value="#{item.fechahorapartida}"  />

 <p:outputLabel value="#{msg['field.horapartida']}" />
   <p:calendar  disabled="true"    
                 size="8" 
                  pattern="HH:mm:ss a" value="#{item.fechahorapartida}"  />

Creamos los métodos

   // <editor-fold defaultstate="collapsed" desc="String showDate(Date date)">
    public String showDate(Date date){
          String h = "";
        try {
            h = DateUtil.dateFormatToString(date, "dd/MM/yyyy");
        } catch (Exception e) {
            JsfUtil.errorMessage("showDate() " + e.getLocalizedMessage());
        }
        return h;
    }// </editor-fold>
    // <editor-fold defaultstate="collapsed" desc="String showHour(Date date)">
    public String showHour(Date date) {
        String h = "";
        try {
            h = DateUtil.hourFromDateToString(date);
        } catch (Exception e) {
            JsfUtil.errorMessage("showHour() " + e.getLocalizedMessage());
        }
        return h;
    }// </editor-fold>

Ahora en el formulario

<p:outputLabel value="#{msg['field.fechapartida']}" />
<p:outputLabel value="#{solicitudDocenteController.showDate(item.fechahorapartida)}"  />

<p:outputLabel value="#{msg['field.horapartida']}" />
<p:outputLabel value="#{solicitudDocenteController.showHour(item.fechahorapartida)}"  />


<p:outputLabel value="#{msg['field.fecharegreso']}" />
<p:outputLabel value="#{solicitudDocenteController.showDate(item.fechahoraregreso)}"  />

<p:outputLabel value="#{msg['field.horaregreso']}" />
<p:outputLabel value="#{solicitudDocenteController.showHour(item.fechahoraregreso)}"  />

Last updated