Skip to main content

Material Design en un Proyecto Java/Jakarta Server Faces con jmoordbjsf

 Hace unos años Google presento Material Design  como un sistema de diseño para construir aplicaciones de alta calidad para Moviles , Web.

Aqui puedes encontar la información https://material.io/design/introduction que sera muy util. Un proyecto muy interesante es https://materializecss.com/about.html . alli puedes ver los principios que ellos definen



En lo personal desde hacer muchos años considero a Java Server Faces/ Jakarta Faces como una excelente opción para la creación de aplicaciones Web en Java.
Y es Primefaces la implementación de referencia, con más de 100 componentes listos para usarse y con cero configuración.
En una evaluación de algunos templates, Materialized me parece muy interesante


puedes ver un poco de AdminBSB-Material Design 

Hace tiempo llevo desarrollando un framework para optimizar componentes Java Server Faces basados en dos grandes proyectos PrimeFaces y Bootfaces, con la idea de simplificar su uso con Jmoordb otro proyecto que utilizó para el manejo de bases datos NoSQL , especialmente MongoDB.

 

Lo interesante de crear un Framework es que dedicas muchas horas en su creación e inviertes gran cantidad de tiempo, que solo es apreciado por quienes tienen una experiencia similar. Para los usuarios finales solo ven la funcionalidad  sin adentrarse en mirar un poco en retrospectiva. En este sentido una gran amiga y compañera de trabajo que hace pocos meses falleció fue de esas personas que siempre creyó en estos proyectos. Fue la persona que siempre decía me gustaría ver como queda, y su fe en que esos frameworks podrían funcionar siempre se convirtio en una motivación. (Muchas gracias Elsa)

Asi que luego de muchos analisis de proyectos y de estandares me decidí a integrar Material Design con Java Server Faces. Primefaces ofrece muchos templates de alta calidad, este proyecto no trata de ser un reemplazo si no algo de tipo personal que puedes usar en tus aplicaciones de una manera simple.



Asumimos que contamos con un proyecto Web maven

Contamos con una pagina index.xhtml con dos botones de primefaces


al ejecutarla en el navegador genera dfos botones







Su uso es muy simple agrega las dependencias  a tu proyecto
 <dependency>
            <groupId>com.github.avbravo</groupId>
            <artifactId>jmoordbjsf</artifactId>
            <version>0.63</version>
        </dependency>

y el repository
   <repositories>
        <repository>
            <id>jitpack.io</id>
            <url>https://jitpack.io</url>
        </repository>
    </repositories>

Ahora en nuestra pagina index.xhtml podemos utilizar iconos mediante    <i class="material-icons">verified_user</i> y los demas componentes de materializecss 
  <div class="card-panel blue darken-2">
                
                         <div class="row">
                             <div class="col s12">
                                            <i class="material-icons">verified_user</i>
                             </div>
                             <div class="col s12">
                                    <p:commandButton value="Codec Native" action="codecnative" />
                             </div>
                             <div class="col s12">
                                   <p:commandButton value="MongoDB Driver" action="mongodbdriver" />
                             </div>
                         </div>
              
          
 
            </div>
           quedaria de la siguiente manera




si ejecutamos el proyecto, puede observar que cambia la vista


En los siguientres blogs mostrare como crear el template y como consumir microservicios en la interface Web.










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.