Artículos Etiquetados ‘Seam’

Combobox JSF con s:convertEnum

7 Octubre 2009

Escribo este post para todos los que alguna vez sufrieron buscando un ejemplo claro y simple de como crear un combobox en base a un Enum en JSF y Seam.

La documentación de Seam (tan clara como el agua) nos nuestra el siguiente ejemplo:

<h:selectOneMenu value="#{person.honorific}">
<s:selectItems value="#{honorifics}" 
                       var="honorific" 
                       label="#{honorific.label}" 
                       noSelectionLabel="Please select" />
   <s:convertEnum />
</h:selectOneMenu>

Donde solo muestran el ejemplo puntual sin dar mayor detalle.
Googleando un poco encontré la siguiente página web donde se dan el trabajo de explicar de una manera sencilla como crear el combobox.

En esa página se muestra el siguiente ejemplo:

XHTML:

<h:selectOneMenu id="marketStatus" 
                 value="#{person.status}"
                 required="true">
    <s:selectItems value="#{enumLists.statusArray}" 
                   var="status"
                   label="#{status}"
                   noSelectionLabel="Select a status..."/>
    <s:convertEnum/>
</h:selectOneMenu>

ENUM:

@Name("enumLists")
@Scope(ScopeType.STATELESS)
public class EnumLists {
   public Status[] getStatusArray() {
     return Status.values();
   }
}

Como se puede ver en el ejemplo han expuesto el Enum como un Seam bean stateless y retornando la lista de valores con status.values().
Para poner un label a cada opción utilizan el toString() del Enum dado que en label colocan label=”#{status}”

Como pueden ver hacer un combobox basado en un Enum es bastante sencillo y útil.

Frameworks para iPhone

4 Agosto 2009

Hace algunas semanas en Antartec se nos encargó desarrollar una aplicación web piloto, ésto no tendría mucha novedad y/o relevancia como para escribir un post sobre ello, sin embargo el objetivo planteado lo hizo particularmente interesante.

El reto en esta aplicación fue desarrollar una web que se comporte como una aplicación nativa de iPhone y que le permita a los usuarios ingresar información en tiempo real al sistema sin encontrarse frente a un computador.

Nuestros esfuerzos se concentraron en expandir nuestro actual framework basado en JSF y SEAM para que soporte el formato iPhone; nuestras investigaciones preliminares dieron frutos y encontramos varios frameworks para simular la apariencia de interfaces nativas en iPhone tales como iUI y UiUI (Universal).
» Leer más: Frameworks para iPhone

Performance: Uso de @Create

13 Febrero 2009

En este post me gustaría hacer una pequeña contribución al post “Performance: ¿Por qué usar @Factory en vez de getters?” de Seam City sobre el uso de @Factory para la obtención de listas.
» Leer más: Performance: Uso de @Create