Skip to main content

Video de uso de componente paginator personalizado

 En el post anterior mostré como crear un componente paginator personalizado para Java Server Faces.  La idea es entender como crearlo. Una vez creado lo empaquete en las librerías jmoordbjsf y jmoordbutils.



Que se agregan al proyecto



La vista de la aplicación es similar a la imagen siguiente:


En las paginas Java Server Faces, desabilitamos paginator del componente <p:dataTable de primefaces.


Agregamos un <f:facet name="header" y colocamos el componente <jmoordbjsf:paginatorx> pasando los atributos el controller y el objeto paginator.

También incluimos un <h:facet name="footer"> y colocamos el componente <jmoordbjsf:paginatorxfooter>, 



En esta aplicación usamos Microprofile, JakartaEE , Jmoordb y MongoDB ejecutandose con PayaraMicro

En el Controller implementamos IPaginator, agregamos un objeto Paginator con sus métodos set/get



Aplicamos varios filtros. en Jmoordb hemos implementado métodos para hacer consultas a MongoDB mediante querys que se envían del cliente al microservicio. Mediante Paginator podemos almacenar las consultas y ordenaciones en base a cada condición e invocamos el método move(Paginator paginator) para que realice el desplazamiento.

Observe el método filterByUserLoged(), crea un Document query para filtrar por el nombre del usuario y lo ordenada por un atributo idboleta de manera descendente.


Otro filtro puede ser onEstadoUnidadChange() que se invoca cuando se selecciona un  elemento del <p::selectOneMenu estado unidad> definido en la pagina, crea un filtro por el usuario y por el estadounidad.


El método move(Paginator paginator), realiza las consultas al Microservicio pasando el objeto Paginator este método también es invocado desde el componente <jmoordbjsf:paginatorx>. De esta manera realizamos las consultas y desplazamientos para cualquier consulta con paginación usando el componente que creamos anteriormente.



Es un componente muy simple, se realizo de esta manera con fines didácticos para mostrar el potencial de Java Server Faces que nos permite crear nuestros propios componentes.


Comments

Popular posts from this blog

Primefaces v13

 La versión nueva de primefaces v13.0 elimina el componente <p:repeat>  Consulte los cambios en  https://github.com/primefaces/primefaces/releases/tag/13.0.0 por lo tanto si necesita una solución similar considere utilizar  <p:carousel>  o  <ui:repeat> En la versión 13 genera una excepción

Jmoordb-Core @UpdateMany y @DeleteMany

 Jmoordb-Core @UpdateMany y @DeleteMany Estoy trabajando en una versión nueva de jmoordb-core en la cual se estará implementando nuevas funcionalidades como lo son @DeleteMany y    @UpdateMany con la finalidad de hacer operaciones sobre múltiples documentos de la colección.