Home > Java, RichFaces > Richfaces, el indicador a4j:status

Richfaces, el indicador a4j:status

Octubre 16th, 2008

Desde que existe la Web 2.0, se puso de moda usar Ajax para darle un aspecto de escritorio a nuestras aplicaciones Web, una de las mas usadas, el el LOADING AJAX, en PHP es facil con las librerias Prototype y jQuery, pero en Java es otra historia, pero no, no crean, desde que aparecio Richfaces, el gallo canta mas temprano, les presento el . Nunca fue mas facil implementar uno.

a4j:status es un indicador de una petición Ajax que tiene 2 estados, iniciado y detenido. El estado de inicio indica que una peticion Ajax esta en progreso, cuando la respuesta Ajax viene de regreso corresponde el componente cambia al estado detenido.

  <a4j:region id="editando">
                    <h:inputText value="#{userBean.name}">
                        <a4j:support event="onkeyup" reRender="outname" />
                    </h:inputText>
<a4j:status for="editando"
onstart="Richfaces.showModalPanel('ajaxLoadingModalBox',{width:100, top:100})"
onstop="Richfaces.hideModalPanel('ajaxLoadingModalBox')"></a4j:status>
</a4j:region>
<rich:modalPanel id="ajaxLoadingModalBox" minHeight="100"
				minWidth="200" height="80" width="400" zindex="100">
	<h2><h:outputText value="Validando...">
	</h:outputText></h2>
</rich:modalPanel>

  • La propiedad for, indica con que region va a trabajar el indicador de estado, en nuestro ejemplo se llama “editando”, cuando se ejecute la peticion Ajax del inputText con el a4j:support, el buscara un indicador de estado para la región a la cual pertenece el input, este sera nuestro indicador el que sea invocado.
  • Las propiedades onstart y onstop, estan encargadas de ejecutar lo que en ellas este indicadas, pueda ser un bean, o codigo JavaScript, pero en nuestro caso usamos un componente ModalPanel “ajaxLoadingModalBox”, que aparecera mientras el indicador de estado pasa de Iniciado a Detenido.
  • Tags: Ajax, loader, RichFaces

    Java, RichFaces , ,

  1. No comments yet.
  1. No trackbacks yet.