SlideShare uma empresa Scribd logo
1 de 38
Incrementando la usabilidad y la interactividad con el usuario
¿Qué es flex?
Plataforma de desarrollo de Adobe
especializada en la creación de
aplicaciones ricas basadas en su
motor flash.
Usa un estilo de código por un lado
usado xml y etiquetas igual que html
(denominados archivos MXML) y por
otro lado el uso de ActionScript       Depende de
similar a java que ya venia usándose
en productos flash.
Flex y Flash
Flex y flash generan el mismo
contenido en esencia:
       El motor de flash detecta por
        igual:
         Cuando se usa flex 3
         Cuando se usa flash CS3
         Cuando combinas ambas
          tecnologias.
Combinando el talento de flash y la
metodolofia de flex se puede crear :
     La mejor experiencia visual y
      usabilidad.
     Integracion de funcionalidad y
      data de negocio.
     Usar “arte” flash dentro de
      aplicaciones flex.
     Comunicación entre aplicaciones
      hechas en flash con flex.
Plataforma Flex versión 3
   Flex SDK 3 (FREE)                                    Flex Builder 3
    MXML and ActionScript 3.0                       Visual Layout

    Flex Framework and Class Library                Code Hinting
    Command-line Compiler & Debugger
                                                    Debugging

   Flex                                             Skinning and Styling
                   Extensible Charting Components
   Charting

   Flex Data Services 3

    Message Service

    Data Management Service

    RPC Services
Como funciona flex
     MXML y ActionScript   Componentes flex
Como funciona flex
 Flex Builder IDE                            Browser
                                          Flash Player
     Flex SDK
 MXML      ActionScript
                                              .swf
  Flex Class Library
                                  Data                       Data


                                          Web Server
      Compilar

                             XML/HTTP                Flex Data Services 2
                               REST
                          SOAP Web Services
                                                 J2EE Application Server
        .swf
                             Aplicaciones e infraestructura existente
Flex Builder 3
Es un IDE basado en eclipse para
desarrollar aplicaciones basadas en
flex sdk, flash player 9, actionscript
3, livecycle DataServices y flex
charting.
Actualmente se encuentra
disponible para windows, mac OS X
y linux.
Puedes instalar el flex builder o un
plugin para un entorno de eclipse ya
existente.
IShares




          http://exploringetfs.com/
Google Financial




      http://www.brightpointinc.com/Gallery/GoogleFinance.asp
Degrafa Map demo




  http://www.degrafa.org/source/DegrafaMapSample/DegrafaMapDemo.html
Ilog Elixir demo : Organization Chart




   http://visudemos.ilog.com/webdemos/orgchart/orgchart.html
Empresas que ofrecen consultoria en flex
Librerias Flex




  BirdEye
Frameworks Flex

              • Usa patron mvc
  Cairgormn   • Uso de commands y eventos
              • Framework oficial de Adobe

              • Orientado plenamente a eventos
              • “Inyecta” las referencias a la GUI

              • Usa patron mvc con 5 capas.
              • Usado para varios lenguajes no solo
                AS3
Tipos de comunicación con flex
Incrustar parametros (FlashVars) directamente en el HTML que
carga el SWF


     HTTPService: Usado para carga de data desde una URL sobre
     HTTP. Mayormente usado para carga de archivos y de
     servicios web REST.


           WebService : Clase que usa un WSDL para la llamada de
           metodos remotos.


                RemoteObject : Usado para llamadas flash remoting. Similar a
                los webservices pero la comunicación es sobre el protocolo
                AMF3 (mas compacto y rapido para parsear data xml).


                      Flex Distributed Messaging : Incluido solo en LiveCyle para uso
                      de mensajeria (JMS)
Usando Spring
Para los ejemplos practicos         Apache CXF
usaremos solo 2 de los 5 tipos de
comunicación :


• Servicios web : Usando el
framework Apache CXF (basado en
Xfire).
•Remote Object : Usando BlazeDS
Sobre el uso de WebServices en Flex
• La clase WebService permite
controlar tanto el resultado como el
error al momento de llamar a un
metodo de un servicio web.
•Los parametros son definidos en un
Array al momento de enviarlos al
metodo.
•Si el servicio web no se encuentra
en el mismo dominio de la aplicación
web (colgada previamente en un
servidor) no podra conectarse. Para
eso es necesario el uso del archivo
crossdomain.xml en el root del
dominio del servicio web.
Ejemplo de un crossdomain.xml
Software a usar
Para nuestra demo usaremos

•Apache CXF 2.2.1 ( es uno de los mas
usados en java junto con Axis, tiene
como predecesor a Xfire).
•JDK 1.5
•FlexBuilder 3
•Eclipse 3.4
•Spring 2.0 (incluido en las librerias de
CXF)
•Tomcat 6.0

Esta demo mostrara un hola mundo
con nuestro nombre enviado como
parametro
Integrando CXF con Spring
Para integrar CXF con spring
necesitamos :


•Las dependencias usadas por CXF.
Son aproximadamente 25 jars
•Escribir nuestros servicios usando
Anotaciones ( necesario java 1.5).
•Declarar dichos servicios como
beans en spring.
•Declarar el servlet de CXF usado
para la creacion y publicacion del
WSDL a partir del codigo java.
Desarrollando los servicios en Flex
Para la parte Flex se desarrollara :

• Crear nuestro proyecto y editar el
archivo mxml por defecto.
•Crear un panel y una caja de texto y
un boton para realizar la llamada.
•Crear una instancia de la clase
WebService que llame a nuestro
metodo creado en el servicio java.
•Crear el metodo que recibira el
resultado en el caso de éxito.
Poniendo todo en marcha!
Sobre el uso de RemoteObjects en Flex
•Transmite y recibe data binaria por    •Los servicios que ofrecen soporte a
medio del protocolo AMF (Action         AMF son
Message Format) , propietario de
Adobe liberado recientemente.               • Adobe LiveCycle Data
•Este protocolo permite eliminar la
                                                Services (version de
necesidad de parsear informacion                pago)
XML transformando los objetos               •   Blaze Data Services
directamente a objetos AS.                      (version libre)
•El protocolo AMF es mas rapido y
                                            •   Adobe ColdFusion
tiene mejor rendimiento que usar
HTTP y webservices.                         •   AMFPHP
•Para obtener la direccion del punto        •   SabreAMF
de acceso para el servidor , la clase
remoteobject usa canales en este
                                            •   Midnight Coders
caso un canal AMFChannel.                       WebORB (para .Net)
Que es Blaze DS ?
Es un set de servicios que ofrece
conectividad a protocolos AMF3.
BlazeDS provee los siguientes
servicios:
     • Remoting Service (uso de
      objetos remotos)
    • Message Service. (uso de
      mensajeria tipo JMS)
    • Proxy Service. (permite
      acceder a servicios que se
      encuentran en distintos
      dominios sin usar
      crossdomain.xml)
Como integramos BlazeDS con Spring?
Como veiamos, si Blaze puede
acceder a objetos remotos, y Spring
Beans puede generar objetos java,
no seria listo para usar los objetos
spring como objetos remotos? Claro
la idea es esa pero es necesario
configuracion de por medio.
 Por defecto los objetos accedidos
por Flex son objetos remotos
creados por BlazeDS .
La clave de usar la integracion es de
dejar que Spring se encarge de
instanciar los objetos y que BlazeDS
solo se encarge de publicarlos.
                                        Ejemplo de una arquitectura
                                        usando BlazeDS , Flex y Spring
Software a usar
Para nuestra demo usaremos

•Blaze DS (WAR con librerias y achivos
necesarios)
•JDK 1.5
•FlexBuilder 3
•Eclipse 3.4
•Tomcat 6.0
•Spring 2.5 (spring.jar y spring-
webmvc.)
•Flex-Spring Integration ( 1.0.0M2)

Esta demo se mostrara una lista de
alumnos y el profesor encargado para
una clase.
Integrando BlazeDS con Spring
Para integrar BlazeDS con spring
necesitamos hacer:


•Crear los archivos remoting-
config.xml y services-config.xml (por
defecto creadas en el war de Blaze)
•Crearemos 2 archivos xml
(appContext y webAppContext) para
manejar los beans de spring y blaze.
•Registrar los beans en dichos
archivos.                               Los servicios java son instanciados en
•Modificar el web.xml para que          appContext.xml para luego ser
                                        publicados por WebAppContext.xml
responda a las peticiones de spring.
Integrando BlazeDS con Spring
Luego de crear los archivos de
configuracion creamos 3 clases : una
que nos devolvera los alumnos y el
profesor designado y las otros 2
seran las clases Profesor y Alumno.


Como ven en la figura, los archivos
que se encuentran en la carpeta flex
estan relacionado a cada tipo de
servicio : messaging, proxy ,
remoting y services ; este ultimo se
encarga de manejar los 3 anteriores.
El resultado ?
Cuales son las ventajas de usar spring con flex?
Entre las principales ventajas
tenemos :
•Usar la arquitectura que nos ofrece
Spring y sus framework relacionados
para crear soluciones ricas ,
escalables y solidas.
•Ofrecer al usuario una experiencia
nueva en terminos de usabilidad,
flexibilidad e interaccion.
•Ofrecer una solucion completa y al
mismo tiempo modularizable para
ser integrado con otros sistemas.
•Transparencia al momento de
publicar nuestros servicios para flex.
Referencias
Libros:
•Flex in Action (2009)
•The Essential Guide for Flex 3 (2008)
•A Beginner´s guide Flex 3 (2008)


Links
•http://blog.flexexamples.com/
•http://merhl.com/
•http://ntt.cc/
•http://www.dehats.com/drupal/
•http://coenraets.org/blog/


Mi blog
•http://blog.govisualperu.com/


Twitter :
@govisualperu (RIA, Ajax, Flex, Grails, etc)


Consultoria? Desarrollo? Cursos Flex, AIR , RIA?
http://govisualperu.com/
Flex y Spring

Mais conteúdo relacionado

Mais procurados

Intro a ASP.NET
Intro a ASP.NETIntro a ASP.NET
Intro a ASP.NETwilliamsm
 
LaCoctelera.com y The Shaker - Conferencia Rails Hispana 2006
LaCoctelera.com y The Shaker - Conferencia Rails Hispana 2006LaCoctelera.com y The Shaker - Conferencia Rails Hispana 2006
LaCoctelera.com y The Shaker - Conferencia Rails Hispana 2006Álvaro Ortiz
 
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)SG 09 Patrones de Integración Empresarial Apache Camel (Draft)
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)Domingo Suarez Torres
 
Introducción ASP .NET
Introducción ASP .NET Introducción ASP .NET
Introducción ASP .NET Universidad
 
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con AjaxDesarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con Ajaxjuliocasal
 
Revista servidores web
Revista servidores webRevista servidores web
Revista servidores weblilavaldez
 
Presentacion remobjects
Presentacion remobjectsPresentacion remobjects
Presentacion remobjectsmamcx
 
Trabajar con bases de datos desde ASP.NET
Trabajar con bases de datos desde ASP.NETTrabajar con bases de datos desde ASP.NET
Trabajar con bases de datos desde ASP.NETJavier Roig
 

Mais procurados (17)

Intro a ASP.NET
Intro a ASP.NETIntro a ASP.NET
Intro a ASP.NET
 
ASP.NET
ASP.NETASP.NET
ASP.NET
 
LaCoctelera.com y The Shaker - Conferencia Rails Hispana 2006
LaCoctelera.com y The Shaker - Conferencia Rails Hispana 2006LaCoctelera.com y The Shaker - Conferencia Rails Hispana 2006
LaCoctelera.com y The Shaker - Conferencia Rails Hispana 2006
 
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)SG 09 Patrones de Integración Empresarial Apache Camel (Draft)
SG 09 Patrones de Integración Empresarial Apache Camel (Draft)
 
20001215 Programación de Servlets y WML
20001215   Programación de Servlets y WML20001215   Programación de Servlets y WML
20001215 Programación de Servlets y WML
 
[Code Camp 2009] Aplicaciones de tiempo real con Silverlight y ASP.NET - COME...
[Code Camp 2009] Aplicaciones de tiempo real con Silverlight y ASP.NET - COME...[Code Camp 2009] Aplicaciones de tiempo real con Silverlight y ASP.NET - COME...
[Code Camp 2009] Aplicaciones de tiempo real con Silverlight y ASP.NET - COME...
 
Asp.net
Asp.netAsp.net
Asp.net
 
Pdfwebservices
PdfwebservicesPdfwebservices
Pdfwebservices
 
Introducción ASP .NET
Introducción ASP .NET Introducción ASP .NET
Introducción ASP .NET
 
Web service
Web serviceWeb service
Web service
 
Web Services
Web ServicesWeb Services
Web Services
 
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con AjaxDesarrollando Una Mejor Experiencia De Usuario Con Ajax
Desarrollando Una Mejor Experiencia De Usuario Con Ajax
 
20001020 Programación ASP y WML
20001020 Programación ASP y WML20001020 Programación ASP y WML
20001020 Programación ASP y WML
 
Revista servidores web
Revista servidores webRevista servidores web
Revista servidores web
 
Presentacion remobjects
Presentacion remobjectsPresentacion remobjects
Presentacion remobjects
 
Zend Framework
Zend FrameworkZend Framework
Zend Framework
 
Trabajar con bases de datos desde ASP.NET
Trabajar con bases de datos desde ASP.NETTrabajar con bases de datos desde ASP.NET
Trabajar con bases de datos desde ASP.NET
 

Semelhante a Flex y Spring

Flex mobile
Flex mobileFlex mobile
Flex mobilealdo87_
 
Flex mobile
Flex mobileFlex mobile
Flex mobilealdo87_
 
Flex mobile
Flex mobileFlex mobile
Flex mobilealdo87_
 
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEBEQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEBUNIV DE CIENCIAS Y ARTES
 
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEBEQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEBUNIV DE CIENCIAS Y ARTES
 
Mc silverlight2 dia1
Mc silverlight2 dia1Mc silverlight2 dia1
Mc silverlight2 dia1YEK1702
 
Clase Introducción a AS3
Clase Introducción a AS3Clase Introducción a AS3
Clase Introducción a AS3Andres Garcia
 
Andre.paola9 blos blospot blogger
Andre.paola9 blos blospot bloggerAndre.paola9 blos blospot blogger
Andre.paola9 blos blospot bloggerpaolatublog
 
Aprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScriptAprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScriptKarsarmi
 
itio de realizacion de un blog blogs blogspot
itio de realizacion de un blog blogs blogspotitio de realizacion de un blog blogs blogspot
itio de realizacion de un blog blogs blogspotpaolatublog
 

Semelhante a Flex y Spring (20)

Flex mobile
Flex mobileFlex mobile
Flex mobile
 
Flex mobile
Flex mobileFlex mobile
Flex mobile
 
Flex mobile
Flex mobileFlex mobile
Flex mobile
 
Adobe flex
Adobe flexAdobe flex
Adobe flex
 
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEBEQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
 
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEBEQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
EQUIPO 2,2A PARTE DE REVISION DE TECNOLOGIAS WEB
 
EQUIPO 2,2A PARTE DE LAS AGUILAS
EQUIPO 2,2A PARTE DE LAS AGUILASEQUIPO 2,2A PARTE DE LAS AGUILAS
EQUIPO 2,2A PARTE DE LAS AGUILAS
 
Mc silverlight2 dia1
Mc silverlight2 dia1Mc silverlight2 dia1
Mc silverlight2 dia1
 
Clase Introducción a AS3
Clase Introducción a AS3Clase Introducción a AS3
Clase Introducción a AS3
 
Andre.paola9 blos blospot blogger
Andre.paola9 blos blospot bloggerAndre.paola9 blos blospot blogger
Andre.paola9 blos blospot blogger
 
Andre.paola9
Andre.paola9Andre.paola9
Andre.paola9
 
Sercicios web
Sercicios webSercicios web
Sercicios web
 
Programacion
ProgramacionProgramacion
Programacion
 
5-Unidad 2: Diseño de Vista-2.2 Para Web
5-Unidad 2: Diseño de Vista-2.2 Para Web5-Unidad 2: Diseño de Vista-2.2 Para Web
5-Unidad 2: Diseño de Vista-2.2 Para Web
 
Aprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScriptAprendiendo a Programas en 4 horas JavaScript
Aprendiendo a Programas en 4 horas JavaScript
 
Charla internet
Charla internetCharla internet
Charla internet
 
Plataforma net
Plataforma netPlataforma net
Plataforma net
 
Paola
PaolaPaola
Paola
 
Paola
PaolaPaola
Paola
 
itio de realizacion de un blog blogs blogspot
itio de realizacion de un blog blogs blogspotitio de realizacion de un blog blogs blogspot
itio de realizacion de un blog blogs blogspot
 

Último

El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..RobertoGumucio2
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 

Último (20)

El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 

Flex y Spring

  • 1. Incrementando la usabilidad y la interactividad con el usuario
  • 2.
  • 3. ¿Qué es flex? Plataforma de desarrollo de Adobe especializada en la creación de aplicaciones ricas basadas en su motor flash. Usa un estilo de código por un lado usado xml y etiquetas igual que html (denominados archivos MXML) y por otro lado el uso de ActionScript Depende de similar a java que ya venia usándose en productos flash.
  • 4. Flex y Flash Flex y flash generan el mismo contenido en esencia:  El motor de flash detecta por igual:  Cuando se usa flex 3  Cuando se usa flash CS3  Cuando combinas ambas tecnologias. Combinando el talento de flash y la metodolofia de flex se puede crear :  La mejor experiencia visual y usabilidad.  Integracion de funcionalidad y data de negocio.  Usar “arte” flash dentro de aplicaciones flex.  Comunicación entre aplicaciones hechas en flash con flex.
  • 5. Plataforma Flex versión 3 Flex SDK 3 (FREE) Flex Builder 3 MXML and ActionScript 3.0 Visual Layout Flex Framework and Class Library Code Hinting Command-line Compiler & Debugger Debugging Flex Skinning and Styling Extensible Charting Components Charting Flex Data Services 3 Message Service Data Management Service RPC Services
  • 6. Como funciona flex MXML y ActionScript Componentes flex
  • 7. Como funciona flex Flex Builder IDE Browser Flash Player Flex SDK MXML ActionScript .swf Flex Class Library Data Data Web Server Compilar XML/HTTP Flex Data Services 2 REST SOAP Web Services J2EE Application Server .swf Aplicaciones e infraestructura existente
  • 8. Flex Builder 3 Es un IDE basado en eclipse para desarrollar aplicaciones basadas en flex sdk, flash player 9, actionscript 3, livecycle DataServices y flex charting. Actualmente se encuentra disponible para windows, mac OS X y linux. Puedes instalar el flex builder o un plugin para un entorno de eclipse ya existente.
  • 9.
  • 10. IShares http://exploringetfs.com/
  • 11. Google Financial http://www.brightpointinc.com/Gallery/GoogleFinance.asp
  • 12. Degrafa Map demo http://www.degrafa.org/source/DegrafaMapSample/DegrafaMapDemo.html
  • 13. Ilog Elixir demo : Organization Chart http://visudemos.ilog.com/webdemos/orgchart/orgchart.html
  • 14. Empresas que ofrecen consultoria en flex
  • 15. Librerias Flex BirdEye
  • 16. Frameworks Flex • Usa patron mvc Cairgormn • Uso de commands y eventos • Framework oficial de Adobe • Orientado plenamente a eventos • “Inyecta” las referencias a la GUI • Usa patron mvc con 5 capas. • Usado para varios lenguajes no solo AS3
  • 17.
  • 18. Tipos de comunicación con flex Incrustar parametros (FlashVars) directamente en el HTML que carga el SWF HTTPService: Usado para carga de data desde una URL sobre HTTP. Mayormente usado para carga de archivos y de servicios web REST. WebService : Clase que usa un WSDL para la llamada de metodos remotos. RemoteObject : Usado para llamadas flash remoting. Similar a los webservices pero la comunicación es sobre el protocolo AMF3 (mas compacto y rapido para parsear data xml). Flex Distributed Messaging : Incluido solo en LiveCyle para uso de mensajeria (JMS)
  • 19. Usando Spring Para los ejemplos practicos Apache CXF usaremos solo 2 de los 5 tipos de comunicación : • Servicios web : Usando el framework Apache CXF (basado en Xfire). •Remote Object : Usando BlazeDS
  • 20.
  • 21. Sobre el uso de WebServices en Flex • La clase WebService permite controlar tanto el resultado como el error al momento de llamar a un metodo de un servicio web. •Los parametros son definidos en un Array al momento de enviarlos al metodo. •Si el servicio web no se encuentra en el mismo dominio de la aplicación web (colgada previamente en un servidor) no podra conectarse. Para eso es necesario el uso del archivo crossdomain.xml en el root del dominio del servicio web.
  • 22. Ejemplo de un crossdomain.xml
  • 23. Software a usar Para nuestra demo usaremos •Apache CXF 2.2.1 ( es uno de los mas usados en java junto con Axis, tiene como predecesor a Xfire). •JDK 1.5 •FlexBuilder 3 •Eclipse 3.4 •Spring 2.0 (incluido en las librerias de CXF) •Tomcat 6.0 Esta demo mostrara un hola mundo con nuestro nombre enviado como parametro
  • 24. Integrando CXF con Spring Para integrar CXF con spring necesitamos : •Las dependencias usadas por CXF. Son aproximadamente 25 jars •Escribir nuestros servicios usando Anotaciones ( necesario java 1.5). •Declarar dichos servicios como beans en spring. •Declarar el servlet de CXF usado para la creacion y publicacion del WSDL a partir del codigo java.
  • 25. Desarrollando los servicios en Flex Para la parte Flex se desarrollara : • Crear nuestro proyecto y editar el archivo mxml por defecto. •Crear un panel y una caja de texto y un boton para realizar la llamada. •Crear una instancia de la clase WebService que llame a nuestro metodo creado en el servicio java. •Crear el metodo que recibira el resultado en el caso de éxito.
  • 26. Poniendo todo en marcha!
  • 27.
  • 28. Sobre el uso de RemoteObjects en Flex •Transmite y recibe data binaria por •Los servicios que ofrecen soporte a medio del protocolo AMF (Action AMF son Message Format) , propietario de Adobe liberado recientemente. • Adobe LiveCycle Data •Este protocolo permite eliminar la Services (version de necesidad de parsear informacion pago) XML transformando los objetos • Blaze Data Services directamente a objetos AS. (version libre) •El protocolo AMF es mas rapido y • Adobe ColdFusion tiene mejor rendimiento que usar HTTP y webservices. • AMFPHP •Para obtener la direccion del punto • SabreAMF de acceso para el servidor , la clase remoteobject usa canales en este • Midnight Coders caso un canal AMFChannel. WebORB (para .Net)
  • 29. Que es Blaze DS ? Es un set de servicios que ofrece conectividad a protocolos AMF3. BlazeDS provee los siguientes servicios: • Remoting Service (uso de objetos remotos) • Message Service. (uso de mensajeria tipo JMS) • Proxy Service. (permite acceder a servicios que se encuentran en distintos dominios sin usar crossdomain.xml)
  • 30. Como integramos BlazeDS con Spring? Como veiamos, si Blaze puede acceder a objetos remotos, y Spring Beans puede generar objetos java, no seria listo para usar los objetos spring como objetos remotos? Claro la idea es esa pero es necesario configuracion de por medio. Por defecto los objetos accedidos por Flex son objetos remotos creados por BlazeDS . La clave de usar la integracion es de dejar que Spring se encarge de instanciar los objetos y que BlazeDS solo se encarge de publicarlos. Ejemplo de una arquitectura usando BlazeDS , Flex y Spring
  • 31. Software a usar Para nuestra demo usaremos •Blaze DS (WAR con librerias y achivos necesarios) •JDK 1.5 •FlexBuilder 3 •Eclipse 3.4 •Tomcat 6.0 •Spring 2.5 (spring.jar y spring- webmvc.) •Flex-Spring Integration ( 1.0.0M2) Esta demo se mostrara una lista de alumnos y el profesor encargado para una clase.
  • 32. Integrando BlazeDS con Spring Para integrar BlazeDS con spring necesitamos hacer: •Crear los archivos remoting- config.xml y services-config.xml (por defecto creadas en el war de Blaze) •Crearemos 2 archivos xml (appContext y webAppContext) para manejar los beans de spring y blaze. •Registrar los beans en dichos archivos. Los servicios java son instanciados en •Modificar el web.xml para que appContext.xml para luego ser publicados por WebAppContext.xml responda a las peticiones de spring.
  • 33. Integrando BlazeDS con Spring Luego de crear los archivos de configuracion creamos 3 clases : una que nos devolvera los alumnos y el profesor designado y las otros 2 seran las clases Profesor y Alumno. Como ven en la figura, los archivos que se encuentran en la carpeta flex estan relacionado a cada tipo de servicio : messaging, proxy , remoting y services ; este ultimo se encarga de manejar los 3 anteriores.
  • 35.
  • 36. Cuales son las ventajas de usar spring con flex? Entre las principales ventajas tenemos : •Usar la arquitectura que nos ofrece Spring y sus framework relacionados para crear soluciones ricas , escalables y solidas. •Ofrecer al usuario una experiencia nueva en terminos de usabilidad, flexibilidad e interaccion. •Ofrecer una solucion completa y al mismo tiempo modularizable para ser integrado con otros sistemas. •Transparencia al momento de publicar nuestros servicios para flex.
  • 37. Referencias Libros: •Flex in Action (2009) •The Essential Guide for Flex 3 (2008) •A Beginner´s guide Flex 3 (2008) Links •http://blog.flexexamples.com/ •http://merhl.com/ •http://ntt.cc/ •http://www.dehats.com/drupal/ •http://coenraets.org/blog/ Mi blog •http://blog.govisualperu.com/ Twitter : @govisualperu (RIA, Ajax, Flex, Grails, etc) Consultoria? Desarrollo? Cursos Flex, AIR , RIA? http://govisualperu.com/