Actividades de computación para alumnos de preescolar
Spring BlazeDS Integration - Rumbo a Spring I/O
1. Spring BlazeDS
Integration
Sergi Almar i Graupera (@sergialmar)
Iván Álvarez (@ivanhoe)
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
5. • Contenedor IoC (Inversión de Control)
usando Inyección de Dependencias.
JVM
6. • Contenedor IoC (Inversión de Control)
usando Inyección de Dependencias.
JVM
Application
Context
7. • Contenedor IoC (Inversión de Control)
usando Inyección de Dependencias.
JVM
Bean A
Application
Context
8. • Contenedor IoC (Inversión de Control)
usando Inyección de Dependencias.
JVM
Bean A Bean B
Application
Context
9. • Contenedor IoC (Inversión de Control)
usando Inyección de Dependencias.
JVM
Bean A Bean B
Bean C
Application
Context
10. • Contenedor IoC (Inversión de Control)
usando Inyección de Dependencias.
JVM
Bean A Bean B
Bean C
Application
Context
11. • Contenedor IoC (Inversión de Control)
usando Inyección de Dependencias.
JVM
Bean A Bean B
Bean C
Application
Context
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
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 C
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. • 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
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. • 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
19. Application Context:
• Instanciado mediante: new
ClassPathXmlApplicationContext()
• Cargado mediante un Servlet Listener
• En Pruebas JUnit usando un Runner de
Spring.
20. • 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
21. Integración empresarial:
• Las aplicaciones empresariales no funcionan
en isolación. Requieren:
• Database Connection Pools
• Transacciones
• Seguridad
• Mensajería
30. +
• Configuración vía el namespace flex
• Configuración de servicios mediante
anotaciones
• Integración con Spring Security
• Integración con JMS
31. 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 />
32. 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
33. Exportando Beans
• Versión XML
<flex:remoting-destination ref=”productService” />
• Versión Anotaciones
• @RemotingDestination
• @RemotingInclude
• @RemotingExclude
35. 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>