domingo, 30 de mayo de 2010

Fin del tercer bloque

Hola.

Esta semana hemos terminado con el bloque más denso del curso, el de J2EE.

Como entregable final, debemos retocar la Tienda Virtual, separando la parte de la vista de los servlets mediante el uso de jsps.

El siguiente bloque trata sobre XML y veremos los siguientes puntos:


  • Qué es XML. Documentos válidos y bien formados. DTD y Schema.

  • Estándares para el manejo de XML: DOM, SAX y Pull.

  • JAXP: Java API for XML Processing.

  • Transformaciones: XPath, XSL y XSLT.

  • Java Architecture for XML Bindings (JAXB).

  • Integración de XML con tecnologías de Servlets, servicios RESTful y clientes ricos.



Ya os iré comentando conforme los vayamos tratando.

Un saludo.

domingo, 23 de mayo de 2010

GWT

Hola.

Esta semana hemos visto el framework de Google GWT. Su punto fuerte es que nos permite desarrollar componentes Web en Java, siendo el compilador el encargado de traducirlo a código HTML y JavaScript.

Como parte práctica, realizamos un ejercicio, que consistía en la implementación de una calculadora. La mayor parte ya estaba hecha y símplemente teníamos que centrarnos en la parte visual y en realizar algunos retoques en la parte del controlador.

Otra alternativa a GWT es "Dojo Toolkit", que es el framework que utilizo yo. No para de crecer día a día y ofrece componentes muy elaborados.

Además, se integra a la perfección con DWR (Direct Web Remoting), que ofrece la posibilidad de realizar llamadas asíncronas, de forma que mediante JavaScript, invocamos a un método del servidor, cuyo resultado será procesado por una callback.

Finalmente, este resultado puede ser tratado por algún componente de Dojo, como por ejemplo un Grid o un Tree, obteniendo unos resultados fabulosos.

Os dejo algún enlace:

http://www.dojotoolkit.org/
http://dojocampus.org/explorer/

http://directwebremoting.org/dwr/index.html

http://wiki.parleys.com/display/PARLEYS/Home#title=Creating%20amazing%20user%20interfaces%20with%20Dojo%20and%20DWR;talk=25591823;slide=1


Un saludo.

domingo, 16 de mayo de 2010

Continuando con REST

Hola.

Esta semana hemos continuado con la parte de REST. El tema terminó con la realización de un ejercicio, que permitía obtener, crear y actualizar una serie de categorías.

En estos servicios, destacan su simplicidad y el uso de las anotaciones. El profesor nos recalcó la importancia que tienen estas últimas, sobre las que continuaremos profundizando cuando lleguemos a la parte de EJBs.

Lo siguiente que veremos será una pequeña introducción a GWT, que es un framework de Google que permite crear componentes con Java para nuestras aplicaciones Web, siendo el propio compilador el encargado de traducirlo a JavaScript y HTML.

Un saludo.

domingo, 9 de mayo de 2010

JSP & REST

Hola.

Esta semana, como indica el título del post, hemos visto JSP y REST.

El anterior entregable consistía en realizar una tienda virtual. Hasta ahora, la parte del cliente la implementábamos en los servlets, escribiendo en estos el código HTML. Con JSP, conseguimos aplicar el patrón MVC, separando las partes del cliente y del servidor y logrando de esta forma que nuestra aplicación sea mucho más mantenible.

Para ello, nos basamos principalmente en el uso de scriptlets, lo que bajo mi punto de vista, es algo "sucio", pues debes escapar todos los bloques Java y no queda demasiado aseado. Además, de esta forma el uso de JavaBeans no tiene mucho sentido, pues como se comentó en clase, si devolvemos una lista, debemos iterar sobre ella mediante un iterator.

El profesor nos comentó alternativas para solucionarlo, como JSTL o Struts. Esta última, la utilizo en mi trabajo y está muy bien. A parte de que el código queda mucho más limpio que con los scriptlets, es mucho más manejable y mantenible. Además, te permite muchas más funcionalidades como por ejemplo:


  • Validar los campos, sin necesidad de hacerlo mediante JavaScript.

  • Uso de interceptores, que son métodos que se ejecutan antes y después de una determinada acción.

  • Una acción se puede implementar como simple o múltiple, de forma, que podemos tener un único Action llamado por ejemplo Biblioteca que realice las siguientes acciones:
    • Dar de alta un usuario
    • Dar de baja un usuario
    • Prestar
    • Devolver
    • Sancionar
En fin, son muchas las ventajas, si os interesa profundizar, os dejo un par de enlaces:
Por otra parte, también vimos REST. Este es uno de los puntos que me llamó la atención al apuntarme al curso, pues no lo conocía y lo había escuchado bastante. La verdad es que me ha parecido muy interesante, pues accedemos a servicios de una forma muy sencilla con muy poquitas líneas de código.

Todos los servicios Web que he realizado hasta ahora, han sido con SOAP. He buscado información por Internet, para comparar ambas metodologías y he encontrado un artículo muy interesante, que os adjunto a continuación.

http://users.dsic.upv.es/~rnavarro/NewWeb/docs/RestVsWebServices.pdf

Un saludo.