Spring BlazeDS Integration - Rumbo a Spring I/O

2,348
-1

Published on

Primer webinar de Rumbo a Spring I/O. Integrando Spring con Flex con Spring BlazeDS Integration

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,348
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
80
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide










































  • Spring BlazeDS Integration - Rumbo a Spring I/O

    1. 1. Spring BlazeDS Integration Sergi Almar i Graupera (@sergialmar) Iván Álvarez (@ivanhoe)
    2. 2. Agenda • Introducció a Spring • Introducción a Flex + BlazeDS • Spring BlazeDS Integration • Exportando Spring beans a Flex • Integrando Spring Security • Integrando con BlazeDS Message Service
    3. 3. Spring Framework
    4. 4. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM
    5. 5. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Application Context
    6. 6. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Bean A Application Context
    7. 7. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Bean A Bean B Application Context
    8. 8. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Bean A Bean B Bean C Application Context
    9. 9. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Bean A Bean B Bean C Application Context
    10. 10. • Contenedor IoC (Inversión de Control) usando Inyección de Dependencias. JVM Bean A Bean B Bean C Application Context
    11. 11. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Constructor o setter injection • Los objetos son creados en el orden correcto basados en sus dependencias
    12. 12. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Constructor o setter injection • Los objetos son creados en el orden correcto basados en sus dependencias Bean C
    13. 13. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Constructor o setter injection • Los objetos son creados en el orden correcto basados en sus dependencias Bean B Bean C
    14. 14. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Constructor o setter injection • Los objetos son creados en el orden correcto basados en sus dependencias Bean B Bean C
    15. 15. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Constructor o setter injection • Los objetos son creados en el orden correcto basados en sus dependencias Bean A Bean B Bean C
    16. 16. • Spring se encarga de crear los objetos e inyectar sus dependencias. • Constructor o setter injection • Los objetos son creados en el orden correcto basados en sus dependencias Bean A Bean B Bean C
    17. 17. Application Context: • Definición de Beans y sus dependencias • Beans de infraestructura • Definido en uno o más archivos .xml
    18. 18. Application Context: • Instanciado mediante: new ClassPathXmlApplicationContext() • Cargado mediante un Servlet Listener • En Pruebas JUnit usando un Runner de Spring.
    19. 19. • Spring utiliza extensivamente AOP para añadir funcionalidad a nuestra aplicación • Permite modularizar los comportamientos comunes (seguridad, gestión de errores...) • Spring AOP genera proxys dinámicos o delega a CGLIB
    20. 20. Integración empresarial: • Las aplicaciones empresariales no funcionan en isolación. Requieren: • Database Connection Pools • Transacciones • Seguridad • Mensajería
    21. 21. Flash Platform
    22. 22. Flex, RIA
    23. 23. Flex + Java Cliente FLEX SOAP HTTP AMF WebServices WebServices RemoteServices JavaScript Bridge JEE Backend Página HTML
    24. 24. AMF • ActionScript Message Format • Flash Player 6: AMF 0 • Flash Player 9: AMF 3 • Especificación abierta desde 2007
    25. 25. Por que AMF?
    26. 26. AMF Remote Services
    27. 27. Java • Adobe LiveCycle ES -> $$ • Adobe BlazeDS -> opensource • GraniteDS -> opensource
    28. 28. BlazeDS
    29. 29. + • Configuración vía el namespace flex • Configuración de servicios mediante anotaciones • Integración con Spring Security • Integración con JMS
    30. 30. MessageBroker • Corazón de Spring BlazeDS Integration • Tipicamente configurado como servlet en web.xml • Ahora configurado como un spring managed bean aprovechando el DispatcherServlet <flex:messageBroker />
    31. 31. Exportando Beans • Spring intenta realizar todo de manera declarativa • En Spring Remoting tenemos Exporters para exportar a RMI, HttpInvoker, Hessian... • Para exportar Spring beans a Flex también lo haremos de manera declarativa
    32. 32. Exportando Beans • Versión XML <flex:remoting-destination ref=”productService” /> • Versión Anotaciones • @RemotingDestination • @RemotingInclude • @RemotingExclude
    33. 33. DEMO
    34. 34. Spring Security • Integración con Spring Security 2 y 3 • Configuración típica de Spring Security sin securización de URLs • Se instala automaticamente un LoginCommand <flex:message-broker> <flex:secured /> </flex:message-broker>
    35. 35. Spring Security • Securizando channels • Securizando Endpoints URL paths
    36. 36. Spring Security • Securización de métodos siempre posible • XML • Anotaciones
    37. 37. DEMO
    38. 38. BlazeDS Message Service • Abstracción de comunicación de mensajería asíncrona • Mensajeria AMF nativa de BlazeDS • JMS
    39. 39. BlazeDS Message Service • Abstracción de comunicación de mensajería asíncrona • Spring Integration
    40. 40. BlazeDS Message Service • MessageTemplate para enviar mensajes a cualquier destino BlazeDS • Abstracción del protocolo de mensajería
    41. 41. DEMO
    42. 42. Referencias • http://www.springsource.org/spring-flex • http://tv.adobe.com/watch/max-2009-develop/ integrating-spring-with-blazeds-and-livecycle-data- services/
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×