Taller spring flex

850 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
850
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Taller spring flex

  1. 1. Taller de Spring 3, BlazeDS 4 y Flex 4 Iván Álvarez (@ivanhoe) Erick Camacho (@ecamacho) Wednesday, October 6, 2010
  2. 2. Agenda • Instalación del ambiente • La aplicación • Introducción a Spring • Introducción a Flex • Introducción a DataServices • Comunicación Spring + Flex • Preguntas Wednesday, October 6, 2010
  3. 3. Instalación del ambiente • Eclipse -> Descomprimir • Flash builder plugin -> Instalar • Repositorio local maven • Ejecutar script de ambiente: Mac OS/X / Linux -> shell> . ./ambiente.sh Windows -> command> ambiente.bat Wednesday, October 6, 2010
  4. 4. Instalación del ambiente Existen 2 proyectos Maven: • twitterds-solucion • twitterds-lab en ambos: mvn eclipse:eclipse Cargar proyectos en Eclipse Wednesday, October 6, 2010
  5. 5. La aplicación Cliente de Twitter • Backend Java + Spring • Frontend Adobe Flex Wednesday, October 6, 2010
  6. 6. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Wednesday, October 6, 2010
  7. 7. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Application Context Wednesday, October 6, 2010
  8. 8. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Bean A Application Context Wednesday, October 6, 2010
  9. 9. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Bean A Bean B Application Context Wednesday, October 6, 2010
  10. 10. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Bean A Bean B Bean C Application Context Wednesday, October 6, 2010
  11. 11. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Bean A Bean B Bean C Application Context Wednesday, October 6, 2010
  12. 12. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Bean A Bean B Bean C Application Context Wednesday, October 6, 2010
  13. 13. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Los objetos son creados en el orden correcto basados en sus dependencias Wednesday, October 6, 2010
  14. 14. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Los objetos son creados en el orden correcto basados en sus dependencias Bean C Wednesday, October 6, 2010
  15. 15. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Los objetos son creados en el orden correcto basados en sus dependencias Bean B Bean C Wednesday, October 6, 2010
  16. 16. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Los objetos son creados en el orden correcto basados en sus dependencias Bean B Bean C Wednesday, October 6, 2010
  17. 17. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Los objetos son creados en el orden correcto basados en sus dependencias Bean A Bean B Bean C Wednesday, October 6, 2010
  18. 18. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Los objetos son creados en el orden correcto basados en sus dependencias Bean A Bean B Bean C Wednesday, October 6, 2010
  19. 19. La inyección se realiza vía constructor: • BeanC beanC = new BeanC(); • BeanB beanB = new BeanB( beanC ); O vía Setter: • BeanC beanc = new BeanC(); • BeanB beanB = new BeanB( ); • beanB.setBeanC( beanC ); Wednesday, October 6, 2010
  20. 20. Application Context: • Definición de Beans y sus dependencias • Beans de infraestructura • Definido en uno o más archivos .xml Wednesday, October 6, 2010
  21. 21. Application Context: • Instanciado mediante: new ClassPathXmlApplicationContext() • Cargado mediante un Servlet Listener • En Pruebas JUnit usando un Runner de Spring. Wednesday, October 6, 2010
  22. 22. LABORATORIO 1: 1. Completar el código de TwitterSendMessageServiceImpl. 2. Cargar el servicio como un Spring Bean (services.xml) y descomenta la declaración de JMS en jms-config.xml 3. Completar la prueba de integración y ejecutarla Wednesday, October 6, 2010
  23. 23. LABORATORIO 1: 4. Comprueba que todo funcione: mvn install -o 5. Levanta jetty: mvn jetty:run -o 6. Aplicación en http://localhost:9090/twitterds-lab-webapp Wednesday, October 6, 2010
  24. 24. Wednesday, October 6, 2010
  25. 25. Wednesday, October 6, 2010
  26. 26. Wednesday, October 6, 2010
  27. 27. Wednesday, October 6, 2010
  28. 28. Flash Builder Wednesday, October 6, 2010
  29. 29. LABORATORIO Wednesday, October 6, 2010
  30. 30. ¿Flex + Java? Cliente FLEX SOAP HTTP AMF WebServices WebServices RemoteServices JavaScript Bridge JEE Backend Página HTML Wednesday, October 6, 2010
  31. 31. ¿AMF ? • ActionScript Message Format • Flash Player 6: AMF 0 • Flash Player 9: AMF 3 • Especificación abierta desde 2007 Wednesday, October 6, 2010
  32. 32. ¿Por qué AMF? • http://www.jamesward.com/census/ Wednesday, October 6, 2010
  33. 33. AMF Remote Services Wednesday, October 6, 2010
  34. 34. Java Players • Adobe LiveCycle ES -> $$ • Adobe BlazeDS -> opensource • GraniteDS -> opensource Wednesday, October 6, 2010
  35. 35. Wednesday, October 6, 2010
  36. 36. + • Spring Factory: Un adapter más • Spring BlazeDS: Integra el Message Broker Servlet de BlazeDS a Spring. Wednesday, October 6, 2010
  37. 37. + • Configuración en un application context vía el namespace flex • Configuración de servicios mediante anotaciones • Integración con Spring Security • Integración con JMS Wednesday, October 6, 2010
  38. 38. + JVM Bean A Bean B Bean C Application Context Wednesday, October 6, 2010
  39. 39. + JVM BlazeDS Bean A Bean B Bean C Application Context Wednesday, October 6, 2010
  40. 40. + JVM BlazeDS Bean A Bean B Bean C Application Context Wednesday, October 6, 2010
  41. 41. + JVM BlazeDS Bean A Bean B Bean C Application Context Wednesday, October 6, 2010
  42. 42. + JVM BlazeDS Bean A Bean B Bean C Application Context Wednesday, October 6, 2010
  43. 43. + Laboratorio Spring BlazeDS •Abrir web.xml, agregar configuración. •Agregar anotaciones a Servicios •Levantar aplicación web •Probar con jconsole Wednesday, October 6, 2010
  44. 44. + Laboratorio Flex: Consumir servicios BlazeDS Wednesday, October 6, 2010
  45. 45. Links • BlazeDS: http://opensource.adobe.com/wiki/display/ blazeds/BlazeDS/ • Spring BlazeDS: http://www.springsource.org/spring- flex • RIAHispano: http://www.riahispano.org • LiveData UG Mexico http://groups.adobe.com/ groups/f2f48b1925/summary • Jeremy Grelle: @jeremyg484 • http://flexblog.faratasystems.com/2006/11/12/ comparing-the-syntax-of-java-5-and-actionscript-3 Wednesday, October 6, 2010
  46. 46. Preguntas ¿? Wednesday, October 6, 2010

×