Buscar en este blog

Chris Gerdes: The future race car -- 150mph, and no driver

Se ha producido un error en este gadget.

viernes, 12 de marzo de 2010

Pasar un LinkedList Java a Arreglo Javascript

En este ejemplo se muestra como pasar un LinkedList (De cualquier estructura u Objeto) contenido en un Servlet o JSP a un arreglo javascript.


En resumen, desde javascript se hace una llamada asincrona usando AJAX al servidor de aplicaciones donde se aloja la aplicacion java al Servlet o JSP con la funcion getJSON de jQuery. Este servlet obtiene informacion de la base de datos en un LinkedList y se convierte al formato JSON para enviarlo a javascript.

En el siguiente ejemplo, se crea un Web Application de Java Usando Netbeans 6.8 y GlassFish v3. Esta es la estructura del proyecto:


 Al ejecutar el proyecto, se llama al archivo index.html:

Aqui se incluye el framework jQuery 1.4.2 y el archivo jquery.code.js que es donde estara todo el codigo jquery para este proyecto.


Cuando se presiona el boton del formulario se llama al metodo mostrarListado del archivo jquery.code.js:




el metodo mostrarListado hace una llamada asincrona (Ajax) usando el metodo getJSON de jquery al servlet clientesServlet:

 

cuando el servlet recibe la solicitud, se ejecuta el metodo processRequest el cual se encargara de retornar la variable tipo JSON al javascript al lado del cliente.


¿Como lo hace?, utilizando la libreria Json-Simple podemos convertir un LinkedList de cualquier estructura a una variable JSON. En la imagen de la estructura del proyecto se ve que se incluyo la libreria.


en la imagen anterior el metodo processRequest crea un LinkedList (llamado lista) con una lista de clientes, llamando al metodo buscarClientes:


el LinkedList que se crea y retorna es de tipo cliente :





Luego que se tiene la lista de clientes, el metodo processRequest la recorre y paso a paso, utilizando la libreria Json-Simple va armando la variable JSON que retornara al javascript.

Se usa el objeto JSONObject para crear un Objeto JSON  y retornarlo. El metodo JSONObject.put, agrega elementos con la forma (nombre, valor). En un JSONObject se pueden agregar variables primitivas, Collections, Array, LinkedList (Esto va a depender de la estructura que se quiera formar)




al final, el metodo retorna la variable jsonObj que es la variable JSON en si. Esta variable tiene la misma estructura que el LinkedList


En el javascript, una vez que el servidor responde, se crea una lista HTML vacia. Luego se recorre la variable JSON que retorno el servidor, que tiene la misma estructura que tenia el LinkedList de Java y por cada cliente se crea un item y se agrega a la lista HTML:
  

lunes, 8 de marzo de 2010

Aplicacion WEB Java con jQuery y Ajax

Ejemplo de como usar jQuery en una aplicacion web utilizando la tecnologia Java.

Para el cliente se usa jQuery 1.4 y html. Para el lado del Servidor, que generalmente es PHP, se usa Java Servlets (en otro ejemplo se utilizara, ademas del servlet, Enterprise Java Beans para conexiones a BD).   

Primero hay que crear una aplicacion web desde netbeans, la estructura queda asi:


La carpeta resources y js se crean manualmente. En la carpeta JS esta el archivo fuente de jQuery y el archivo jquery.code.js en el cual estara todo el codigo fuente javascript.



Al ejecutar el proyecto, inicia por el archivo index.html:


 
 Simplemente tiene un formulario con un select y un div vacio.


El archivo jquery.code.js se esta incluyendo en la seccion Head del Html:




Al cargarse toda la pagina HTML, se asigna un controlador para el evento click en el boton del formulario.


Cuando se haga clic, se guarda en la variable Listado la opcion seleccionada del Select y se llama a la funcion MostrarListado


Esta funcion hace una llamada usando AJAX al servlet clientesServlet y le envia como parametro la variable Listado. 


El servlet Simplemente retorna un codigo html. Cuando el servidor termine de procesar la solicitud, se agrega en el div vacio del html el contenido de la respuesta:







Requiere Netbeans y un servidor de aplicaciones ( en este ejemplo se uso GlassFish, que Normalmente se instala con el de Netbeans ) que tiene el contenedor de Servlets y EJBs para la ejecución de la aplicacion WEB Java.

El proyecto puede ser descargado aqui

miércoles, 3 de marzo de 2010

Ejemplo de Servlets y JSP

Este ejemplo muestra una aplicación sencilla utilizando un Enterprise Application de java, a su vez se compone de 2 Java EE Modules:
  • EJB Module - EnterpriseApplication1-ejb (Es donde estarian los Enterprise Java Beans. Inactivo en este ejemplo)
  • WEB Application - EnterpriseApplication1-war (Es donde estan los servlets, html y Jsp)
Uuna vez que se ejecuta el proyecto, se llama al archivo:


Index.jsp

simplemente muestra un formulario HTML para seleccionar un Listado:

 
Al seleccionar el listado "Clientes" y hacer clic en mostrar, se hace la llamada al servlet:

HandleRequestServlet

 

el cual en el metodo ProcessRequest recibe el tipo de listado seleccionado y carga una lista de clientes en un arreglo de String llamado clientes. (Luego en otro ejemplo en vez de llenarse manualmente se buscara en una base de datos usando EJB y un Pool de Conexiones) Este arreglo sera enviado por parametro al archivo:
clientesList.jsp
 

que se encargará de mostrar la respuesta al cliente:
 

Esta es la estructura del proyecto:


El proyecto puede ser descargado aqui

martes, 2 de marzo de 2010

Hola TU! utilizando Java Web Application y NetBeans 6.8

Este ejemplo muestra como crear una Aplicacion Web Simple y Estatica usando algunas de las tecnologías Web que ofrece Java.

Requiere Netbeans 6.8 y el Glass Fish Enterprise Server v3 que se instala con el paquete de Netbeans.

Primero, crear el proyecto de tipo Java Web / Web Application

Colocar el nombre de la aplicacion


Seleccionar el Servidor GlassFish v3 Domain


Aqui se pueden seleccionar algunos frameworks que tengan instalado, como el IceFaces. Para este ejemplo no se selecciona nada.


A la izquierda se ve la estructura del proyecto y a la derecha el codigo fuente del archivo index.jsp , el cual sera el punto de inicio de la aplicacion.


Hay un formulario y en el atributo ACTION hace la llamada a un SERVLET que recibira los parametros del formulario cuando se presione submit.


Se crea un paquete de nombre SERVLETS y se hace click en Crear Servlet :

Se coloca el nombre del servlet (notese que el atributo action del formulario HTML tiene como valor MiPrimerServlet)


El codigo fuente del servlet queda asi:


El metodo processRequest se encarga de procesar las peticiones Get y Post que se hagan al Servlet. SImplemente se imprime en pantalla el parametro NOMBRE del formulario del archivo index.jsp

El resultado:

  

 

Nota, Para iniciar el servidor GlassFish desde netbeans:


 

Los archivos fuentes pueden ser descargados Aqui.

lunes, 1 de marzo de 2010

Autocompletar con jQuery UI

jQuery UI tiene un nuevo widget llamado autocomplete.

En ciertas ocasiones queda mejor un Input Text con autocompletar que un Combo Box


El codigo fuente como siempre, jquery lo hace sencillo:

Sin embargo, esta la opcion para utilizar el autocompletar con un Combo Box: