ADF:  El Framework de  desarrollo de Fusion Pedro Gallardo Responsable Área Middleware
Agenda ¿Qué  es  ADF ? ¿Por qué escoger  ADF ?
¿Qué es ADF?
ADF  es un Meta-framework   ( Framework de frameworks ) No  hay duda de que en el mundo JEE hay muchos frameworks y soluciones puntuales de gran calidad, pero son solo islas de funcionalidad (presentación, servicios, datos). Un Meta-framework ofrece un pila tecnológica certificada con la capacidad de satisfacer la mayor parte de los requisitos y con un ciclo de vida muy similar al de la aplicación que va a ser desarrollada.
Frameworks Vs Meta-Frameworks Alcance Los frameworks son soluciones parciales – control de flujo de páginas, UI, acceso a base de datos,…. Los Meta-frameworks lo cubren todo Coexistencia Classloading, los componentes tienen que compartir la misma versión de las APIs fundamentales,…. Con un meta-framework toda la pila tecnológica está certificada.. Abstracción Evitar fontanería Ocultar la complejidad técnica Herramientas Automatización tareas repetitivas ...
¿Qué objetivos persigue  ADF ? Incremento de  Productividad Menor curva de aprendizaje Guerra a la complejidad Todo tipo de desarrolladores Más  usabilidad Web 2.0 Ajax, JSF, Multicanal. Desarrollo basado en  estándares EJB 3 (JSR-220) JSF (JSR-127): Trinidad Data Binding (JSR-227) Portlets (JSR-168)
¿Qué es  ADF ? Herramientas RAD Frameworks de Desarrollo JEE 6 Web 2.0 Portales Colaborativos.. Frameworks de desarrollo basados en estándares integrados con Herramientas + Tecnología Web 2.0, AJAX, etc ADF & Jdeveloper ADF Faces Rich Client WebCenter
JDeveloper  herramienta de desarrollo de  ADF  y mucho más …
ADF  es el  corazón  de Fusión Applications
Fusion Applications –  Componentes La Web ha evolucionado de un modelo de páginas a un modelo de componentes. Tecnologías que lo hacen posible
ADF  incorpora un kit de componentes pre construido para la creación de aplicaciones
ADF  implementa el patrón  MVC ADF
ADF, Arquitectura Controllador ADF Metadata Services Vista ADF Modelo ADF BC  Services Web  Services Acceso a Datos Servicios de  Negocio Capa Persistencia ADF BC View ADF BC Entity ADF Bindings Servicios de Datos ADF Data Control Java Beans EJB Sessions TopLink Queries TopLink Mapping Datos Relacionales Datos XML Datos Legacy Aplicaiones Empaquetadas Faces ADF Faces JSF Struts JSP ADF Swing
ADF, Elección RAD (Visual IDE) Controllador ADF Metadata Services Vista JSF ADF Modelo ADF BC  Services Web  Services Acceso a Datos Capa Persistencia ADF BC View ADF BC Entity ADF Bindings Struts JSP Servicios de Datos ADF Data Control Java Beans EJB Sessions TopLink Queries TopLink Mapping Servicios de  Negocio Datos Relacionales Datos XML Datos Legacy Aplicaiones Empaquetadas Faces ADF Faces ADF Swing
ADF, Elección OO  Controllador ADF Metadata Services Vista JSF ADF Modelo Acceso a Datos Capa Persistencia ADF BC View ADF BC Entity ADF Bindings JSP Servicios de Datos ADF Data Control Java Beans EJB Sessions TopLink Queries TopLink Mapping ADF BC  Services Web  Services Servicios de  Negocio Datos Relacionales Datos XML Datos Legacy Aplicaiones Empaquetadas Faces ADF Faces Struts ADF Swing
ADF Faces construido sobre JSF
Que es JSF?  Java Server Faces Desarrollado en la Java Community Process (JCP) como la JSR-127 Nickname: Faces Objetivo: Simplificar la creación de GUIs Java  y dar soporte a un modelo basado en componentes Inicio: Mayo del 2001 Primera release oficial: Marzo del 2004 Oracle es un ‘primary contributor’
 
Pensamiento sobre JSF … “ The real problem is that the existing standard components are simply too basic to offer any real benefit to users…” Rething JSF – The Real Problem ( www.theserverside.com  – April 2007)
¿Qué aporta ADF Faces vs JSF? Conjunto de Componetes mayor Más de 100 tipos de componentes Componentes más avanzados Partial-page rendering, etc Distintos kits de rendering Aplicaciones ‘Ask’ Funcionalidades para Personalizar aplicaciones, look-and-feel Validaciones en el cliente ADF Faces RIA (Rich Internet Architecture) Soporte a ADF model out-of-the-box
 
Nos lleva a… “ There’s one company that deserves praise for actually pushing JSF in the right direction: Oracle. ADF Faces is a fantastic set of widgets with drop-in funtionality.” Rething JSF – The Real Problem ( www.theserverside.com  – April 2007)
¿Por qué escoger ADF?
Estándares
Nuestros objetivos Incremento de  Productividad Menor curva de aprendizaje Guerra a la complejidad Todo tipo de desarrolladores Más  usabilidad Web 2.0 Ajax, JSF, Multicanal Desarrollo basado en  estándares EJB 3 (JSR-220) JSF (JSR-127): Trinidad Data Binding (JSR-227) Portlets (JSR-168)
Trinidad MyFaces Implemtación de  ADF Faces  que Oracle libera a la comunidad http://wiki.apache.org/myfaces/FrontPage http://myfaces.apache.org/
Productividad
Contexto tradicional en desarrollo de aplicaciones WEB Menor Productividad Mayor Complejidad Diferentes arquitecturas Diferentes tecnologías Multitud de frameworks dispersos Desarrolladores muy especializados Interfaz de usuario no comparable a escritorio Soluciones no basadas en estándares ¡...pero ahora los Frameworks JAVA y la tecnología WEB han evolucionado !
Productividad y Herramientas Generar Código Frameworks de Desarrollo Automatización de tareas Productividad Oracle ADF Oracle JDeveloper
Oracle JDeveloper 10G
JavaPolis RAD Race Equipos de 2 desarrolladores deben resolver un caso de la vida real y entregar una aplicación acabada en 12 horas No pueden recibir ningún tipo de ayuda externa Sólo los mejores y más experimentados equipos con un sólido conjunto de herramientas de desarrollo tendrán éxito Un jurado de especialistas independientes decide el ganador
JavaPolis RAD Race – Ganadores 2005/06 Posición Empresa Matriz Tecnológica Logical CMG JDeveloper 10g 10.1.2 IDE Struts, JSP, ADF Framework JHeadstart  Oracle JDeveloper 10g 10.1.3 IDE JavaServer Faces ADF Framework  AXI JDeveloper 10g 10.1.2 IDE Framework propio
JHeadStart  incrementa de forma drástica la productividad de  ADF Demostración  http://www.bbr.cat/index.php?option=com_myblog&show=Demo-Creacion-de-una-aplicacion-con-JDeveloper-y-JHeadStart-10.1.3-paso-a-paso..html&Itemid=53
Matriz comparativa  Forms  vs  ADF  vs  JHeadStart  vs  BBRedJav  Productividad Funcionalidad Forms ADF JHeadStart BBRedJav
BBRedJav  extiende las funcionalidades de  ADF  con   la productividad de  JHeadStart Demostración Aplicación desarrollada con: ADF 10g JHeadStart 10.1.3 BBRedJava 10.1.3 Yahoo UI Mootools JS http://www.bbr.cat/presentaciones/videos/EnominaAdf/EnominaAdf.html
Patrones de Diseño.  Buenas Prácticas
Patrones de diseño en ADF … +  de  14  patrones de diseño Patrón Funcionalidad Model/View/Controller Cleanly separates the roles of data and presentation, allowing multiple types of client displays to work with the same business information. Interface / Implementation Separation Cleanly separates the API or Interface for components from their implementation class Service Locator Abstracts the technical details of locating a service so the client and use it more easily Inversion of Control A containing component orchestrates the lifecycle of the components it contains, invoking specific methods that the developer can overrides at the appropriate times so the developer can focus more on what the code should do instead when it should get executed. Dependency Injection Simplifies application code, and increases configuration flexibility by deferring component configuration and assembly to the container Active Record Avoids the complexity of "anything to anything" object/relational mapping, by providing an object that wraps a row in a database table or view, encapsulates the database access, and adds domain logic on that data. Data Access Objects Avoids unnecessary marshalling overhead by implementing dependent objects as lightweight, persistent classes instead of each as an Enterprise Bean. Isolates persistence details into a single, easy to maintain class.
Patrones de diseño en ADF … +  de  14  patrones de diseño Patrón Funcionalidad Session Facade Avoids inefficient client access of Entity Beans and inadvertent exposure of sensitive business information by wrapping Entity Beans with a Session Bean. Value Object Avoids unnecessary network round-trips by creating one-off "transport" objects to group a set of related attributes needed by a client program. Page-by-Page Iterator Avoids sending unnecessary data to the client by breaking a large collection into page-sized "chunks" for display. Fast-Lane Reader Avoids unnecessary overhead for read-only data by accessing JDBC API's directly. This allows an application to retrieve only the attributes that need to be displayed, instead of finding all of the attributes by primary key when only a few attributes are required by the client. Typically, implementations of this pattern sacrifice data consistency for performance, since queries performed at the raw JDBC level do not "see" pending changes made to business information represented by Enterprise Beans. (Bean) Factory Allows runtime instantiation and configuration of an appropriate subclass of a given interface or superclass based on externally-configurable information. Entity Facade Provides a restricted view of data and behavior of one or more business entities. Value Messenger Keeps client value object attributes in sync with the middle-tier business entity information that they represent in a bidirectional fashion. Continuations Gives the developer the simplicity and productivity of a stateful programming model with the scalability of a stateless web solution
Estratégico para Oracle
Estratégico para
Estrategia de producto
Estrategia de producto
Para todo tipo de desarrollos
Desarrollo de aplicaciones Web de FrontOffice
Desarrollo de aplicaciones Web de FrontOffice
Desarrollo de aplicaciones Web de FrontOffice Demo ENomina
Desarrollo de aplicaciones Web de FrontOffice Demo ENomina
Desarrollo de aplicaciones Web de FrontOffice Demo Enomina http://www.bbr.cat/presentaciones/videos/EnominaAdf/EnominaAdf.html
Desarrollo de aplicaciones de BackOffice
Desarrollo de aplicaciones de BackOffice Demo Outis
Desarrollo de aplicaciones de BackOffice Demo Outis
Desarrollo de aplicaciones de BackOffice
Desarrollo de aplicaciones de BackOffice DEMO: http://www.bbr.cat/presentaciones/videos/Flash_GSGVIA_DEMO/Flash_GSGVIA_DEMO.html
Desarrollo de aplicaciones de BackOffice
Desarrollo de aplicaciones de BackOffice
Desarrollo de aplicaciones Mixtas  ADF  &  Forms Demo Forms y ADF
Desarrollo de aplicaciones  SOA Las tareas son ejecutadas y gestionadas desde el “WorkList Application”
Para todo tipo de desarrolladores
Escoge tu estilo de desarrollo
Desarrollo JSF Visual
JSF y JDeveloper 10.1.3 Edición Visual de JSF Edición Visual de JSF UI Component  Proporciona generación del código de respaldo (doble-click) Mobile WYSIWYG
JSF y JDeveloper 10.1.3 Consola de Edición de Faces Config Consola para Edición productiva de faces-config.xml
JSF y JDeveloper 10.1.3 JSF Page Flow Edición Visual del modelo de navegación de Faces
ADF Faces Components Examples
Multicanal
Desarrollo Multicanal
Desarrollo Multicanal
Desarrollo Multicanal
Desarrollo de aplicaciones Java – ADF para el IPhone Demo: http://www.oracle.com/technology/pub/articles/huang-iphone.html
Fácilmente portletizable
La interfaz de usuario tiende al Mashup de aplicaciones
La interfaz de usuario tiende al Mashup de aplicaciones Next Generation: http://download.oracle.com/otndocs/tech/webcenter/files/owcs_11_oow06_viewlet.html Matrix Social NetWork: http://download.oracle.com/otndocs/tech/webcenter/files/owcs_matrix_demo_viewlet_swf.html
Portlets Portlets: componentes Web reusables que permiten ser personalizados y configurados Tecnologías Portlet : Portlets Estándares (JSR 168) Oracle PDK-Java portlets PL/SQL portlets (Portal 10g – portlets locales) Portlet Bridge Specifications for JSF (JSR-301)  http://www.jcp.org/en/jsr/detail?id=301 WSRP (JSR-286) http://download.oracle.com/otndocs/tech/webcenter/files/owc_r11_portlet_bridge_demo.html Demo portlet Bridge
Out-of-the-box Portlets OmniPortlet Web Clipping Rich Text Portlet
Tecnologías Portlet :  JSR 168/WSRP – PDK-Java Browser Consumer  (Portal 10g, ADF Application) JSR 168 Portlet PDK-Java Portlet SOAP WSRP
Construyendo JSR-168/Oracle PDK-Java Portlet Portlet Wizard disponible desde New Gallery Usa el Wizard para crear el esqueleto del portlet Añade la lógica del portlet
Desplegando y Consumiendo Portlets Arranca el contenedor OC4J Crea una conexión al contenedor OC4J Despliega el portlet Registra el Provedor Arrastra y suelta el portlet en tu página JSF 1 2 3 4 Contenedor OC4J JDeveloper 5
Contexto de Parámetros 10001 Parámetro de Formulario: WSRP 2.0 portlet OmniPortlet:  PDK-Java portlet
Soporte a WebServices y SOA
ADF BC – WS  Controller Faces ADF Metadata Services View ADF Faces JSF ADF Model ADF Data Control ADF BC  Services Data  Access Business Service Persistence Layer ADF BC View ADF BC Entity ADF Bindings Web Service Entity y ViewObjects basados en Web Service
AppModule WS Controller Faces ADF Metadata Services View ADF Faces JSF ADF Model ADF Data Control Web  Services Data  Access Business Service Persistence Layer ADF BC View ADF BC Entity ADF Bindings
Es el framework que Oracle  utiliza para el desarrollo  de sus aplicaciones
Fusion Applications -  HCM
Fusion Applications -  CRM
Fusion Applications -  Projects
ADF Faces RC 11g  –  Data Visualization
Fusion Applications –  Data Visualization Graph
Fusion Applications –  Data Visualization Gauge
Fusion Applications –  Data Visualization Geographic Map
Fusion Applications –  Data Visualization Pivot Table
Fusion Applications –  Data Visualization Gantt Chart
Fusion Applications –  Data Visualization Vista Jerárquica
Conclusiones
Conclusiones ADF  es el framework de desarrollo estratégico para Oracle. Framework más  productivo  para desarrollo web del mercado Construido sobre  estándares Pensado para todo tipo de  desarrollos Pensado para todo tipo de  desarrolladores Existen multitud de casos de  éxito
Links de Interés Blog de BBR www.bbr.cat/index.php?option=com_myblog&Itemid=53 Comunidad  hispana de desarrolladores ADF www.jdeveloperla.com Página oficial de Oracle de ADF www.oracle.com/technology/products/adf/index.htmlhttp://www.oracle.com/technology/products/adf/index.html Página oficial de Oracle de ADF Faces RC www.oracle.com/technology/products/adf/adffaces/index.html
[email_address] C/ Aragó, 182, 4t, 08011 Barcelona Telèfon 934 731 393 Av. Ramon Folch, 13, 3r, 17001 Girona Telèfon 972 413 638 www.bbr.cat

Adf. El Framework De Desarrollo De Fusion V7.0

  • 1.
  • 2.
    ADF: ElFramework de desarrollo de Fusion Pedro Gallardo Responsable Área Middleware
  • 3.
    Agenda ¿Qué es ADF ? ¿Por qué escoger ADF ?
  • 4.
  • 5.
    ADF esun Meta-framework ( Framework de frameworks ) No hay duda de que en el mundo JEE hay muchos frameworks y soluciones puntuales de gran calidad, pero son solo islas de funcionalidad (presentación, servicios, datos). Un Meta-framework ofrece un pila tecnológica certificada con la capacidad de satisfacer la mayor parte de los requisitos y con un ciclo de vida muy similar al de la aplicación que va a ser desarrollada.
  • 6.
    Frameworks Vs Meta-FrameworksAlcance Los frameworks son soluciones parciales – control de flujo de páginas, UI, acceso a base de datos,…. Los Meta-frameworks lo cubren todo Coexistencia Classloading, los componentes tienen que compartir la misma versión de las APIs fundamentales,…. Con un meta-framework toda la pila tecnológica está certificada.. Abstracción Evitar fontanería Ocultar la complejidad técnica Herramientas Automatización tareas repetitivas ...
  • 7.
    ¿Qué objetivos persigue ADF ? Incremento de Productividad Menor curva de aprendizaje Guerra a la complejidad Todo tipo de desarrolladores Más usabilidad Web 2.0 Ajax, JSF, Multicanal. Desarrollo basado en estándares EJB 3 (JSR-220) JSF (JSR-127): Trinidad Data Binding (JSR-227) Portlets (JSR-168)
  • 8.
    ¿Qué es ADF ? Herramientas RAD Frameworks de Desarrollo JEE 6 Web 2.0 Portales Colaborativos.. Frameworks de desarrollo basados en estándares integrados con Herramientas + Tecnología Web 2.0, AJAX, etc ADF & Jdeveloper ADF Faces Rich Client WebCenter
  • 9.
    JDeveloper herramientade desarrollo de ADF y mucho más …
  • 10.
    ADF esel corazón de Fusión Applications
  • 11.
    Fusion Applications – Componentes La Web ha evolucionado de un modelo de páginas a un modelo de componentes. Tecnologías que lo hacen posible
  • 12.
    ADF incorporaun kit de componentes pre construido para la creación de aplicaciones
  • 13.
    ADF implementael patrón MVC ADF
  • 14.
    ADF, Arquitectura ControlladorADF Metadata Services Vista ADF Modelo ADF BC Services Web Services Acceso a Datos Servicios de Negocio Capa Persistencia ADF BC View ADF BC Entity ADF Bindings Servicios de Datos ADF Data Control Java Beans EJB Sessions TopLink Queries TopLink Mapping Datos Relacionales Datos XML Datos Legacy Aplicaiones Empaquetadas Faces ADF Faces JSF Struts JSP ADF Swing
  • 15.
    ADF, Elección RAD(Visual IDE) Controllador ADF Metadata Services Vista JSF ADF Modelo ADF BC Services Web Services Acceso a Datos Capa Persistencia ADF BC View ADF BC Entity ADF Bindings Struts JSP Servicios de Datos ADF Data Control Java Beans EJB Sessions TopLink Queries TopLink Mapping Servicios de Negocio Datos Relacionales Datos XML Datos Legacy Aplicaiones Empaquetadas Faces ADF Faces ADF Swing
  • 16.
    ADF, Elección OO Controllador ADF Metadata Services Vista JSF ADF Modelo Acceso a Datos Capa Persistencia ADF BC View ADF BC Entity ADF Bindings JSP Servicios de Datos ADF Data Control Java Beans EJB Sessions TopLink Queries TopLink Mapping ADF BC Services Web Services Servicios de Negocio Datos Relacionales Datos XML Datos Legacy Aplicaiones Empaquetadas Faces ADF Faces Struts ADF Swing
  • 17.
  • 18.
    Que es JSF? Java Server Faces Desarrollado en la Java Community Process (JCP) como la JSR-127 Nickname: Faces Objetivo: Simplificar la creación de GUIs Java y dar soporte a un modelo basado en componentes Inicio: Mayo del 2001 Primera release oficial: Marzo del 2004 Oracle es un ‘primary contributor’
  • 19.
  • 20.
    Pensamiento sobre JSF… “ The real problem is that the existing standard components are simply too basic to offer any real benefit to users…” Rething JSF – The Real Problem ( www.theserverside.com – April 2007)
  • 21.
    ¿Qué aporta ADFFaces vs JSF? Conjunto de Componetes mayor Más de 100 tipos de componentes Componentes más avanzados Partial-page rendering, etc Distintos kits de rendering Aplicaciones ‘Ask’ Funcionalidades para Personalizar aplicaciones, look-and-feel Validaciones en el cliente ADF Faces RIA (Rich Internet Architecture) Soporte a ADF model out-of-the-box
  • 22.
  • 23.
    Nos lleva a…“ There’s one company that deserves praise for actually pushing JSF in the right direction: Oracle. ADF Faces is a fantastic set of widgets with drop-in funtionality.” Rething JSF – The Real Problem ( www.theserverside.com – April 2007)
  • 24.
  • 25.
  • 26.
    Nuestros objetivos Incrementode Productividad Menor curva de aprendizaje Guerra a la complejidad Todo tipo de desarrolladores Más usabilidad Web 2.0 Ajax, JSF, Multicanal Desarrollo basado en estándares EJB 3 (JSR-220) JSF (JSR-127): Trinidad Data Binding (JSR-227) Portlets (JSR-168)
  • 27.
    Trinidad MyFaces Implemtaciónde ADF Faces que Oracle libera a la comunidad http://wiki.apache.org/myfaces/FrontPage http://myfaces.apache.org/
  • 28.
  • 29.
    Contexto tradicional endesarrollo de aplicaciones WEB Menor Productividad Mayor Complejidad Diferentes arquitecturas Diferentes tecnologías Multitud de frameworks dispersos Desarrolladores muy especializados Interfaz de usuario no comparable a escritorio Soluciones no basadas en estándares ¡...pero ahora los Frameworks JAVA y la tecnología WEB han evolucionado !
  • 30.
    Productividad y HerramientasGenerar Código Frameworks de Desarrollo Automatización de tareas Productividad Oracle ADF Oracle JDeveloper
  • 31.
  • 32.
    JavaPolis RAD RaceEquipos de 2 desarrolladores deben resolver un caso de la vida real y entregar una aplicación acabada en 12 horas No pueden recibir ningún tipo de ayuda externa Sólo los mejores y más experimentados equipos con un sólido conjunto de herramientas de desarrollo tendrán éxito Un jurado de especialistas independientes decide el ganador
  • 33.
    JavaPolis RAD Race– Ganadores 2005/06 Posición Empresa Matriz Tecnológica Logical CMG JDeveloper 10g 10.1.2 IDE Struts, JSP, ADF Framework JHeadstart Oracle JDeveloper 10g 10.1.3 IDE JavaServer Faces ADF Framework AXI JDeveloper 10g 10.1.2 IDE Framework propio
  • 34.
    JHeadStart incrementade forma drástica la productividad de ADF Demostración http://www.bbr.cat/index.php?option=com_myblog&show=Demo-Creacion-de-una-aplicacion-con-JDeveloper-y-JHeadStart-10.1.3-paso-a-paso..html&Itemid=53
  • 35.
    Matriz comparativa Forms vs ADF vs JHeadStart vs BBRedJav Productividad Funcionalidad Forms ADF JHeadStart BBRedJav
  • 36.
    BBRedJav extiendelas funcionalidades de ADF con la productividad de JHeadStart Demostración Aplicación desarrollada con: ADF 10g JHeadStart 10.1.3 BBRedJava 10.1.3 Yahoo UI Mootools JS http://www.bbr.cat/presentaciones/videos/EnominaAdf/EnominaAdf.html
  • 37.
    Patrones de Diseño. Buenas Prácticas
  • 38.
    Patrones de diseñoen ADF … + de 14 patrones de diseño Patrón Funcionalidad Model/View/Controller Cleanly separates the roles of data and presentation, allowing multiple types of client displays to work with the same business information. Interface / Implementation Separation Cleanly separates the API or Interface for components from their implementation class Service Locator Abstracts the technical details of locating a service so the client and use it more easily Inversion of Control A containing component orchestrates the lifecycle of the components it contains, invoking specific methods that the developer can overrides at the appropriate times so the developer can focus more on what the code should do instead when it should get executed. Dependency Injection Simplifies application code, and increases configuration flexibility by deferring component configuration and assembly to the container Active Record Avoids the complexity of "anything to anything" object/relational mapping, by providing an object that wraps a row in a database table or view, encapsulates the database access, and adds domain logic on that data. Data Access Objects Avoids unnecessary marshalling overhead by implementing dependent objects as lightweight, persistent classes instead of each as an Enterprise Bean. Isolates persistence details into a single, easy to maintain class.
  • 39.
    Patrones de diseñoen ADF … + de 14 patrones de diseño Patrón Funcionalidad Session Facade Avoids inefficient client access of Entity Beans and inadvertent exposure of sensitive business information by wrapping Entity Beans with a Session Bean. Value Object Avoids unnecessary network round-trips by creating one-off "transport" objects to group a set of related attributes needed by a client program. Page-by-Page Iterator Avoids sending unnecessary data to the client by breaking a large collection into page-sized "chunks" for display. Fast-Lane Reader Avoids unnecessary overhead for read-only data by accessing JDBC API's directly. This allows an application to retrieve only the attributes that need to be displayed, instead of finding all of the attributes by primary key when only a few attributes are required by the client. Typically, implementations of this pattern sacrifice data consistency for performance, since queries performed at the raw JDBC level do not "see" pending changes made to business information represented by Enterprise Beans. (Bean) Factory Allows runtime instantiation and configuration of an appropriate subclass of a given interface or superclass based on externally-configurable information. Entity Facade Provides a restricted view of data and behavior of one or more business entities. Value Messenger Keeps client value object attributes in sync with the middle-tier business entity information that they represent in a bidirectional fashion. Continuations Gives the developer the simplicity and productivity of a stateful programming model with the scalability of a stateless web solution
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
    Para todo tipode desarrollos
  • 45.
    Desarrollo de aplicacionesWeb de FrontOffice
  • 46.
    Desarrollo de aplicacionesWeb de FrontOffice
  • 47.
    Desarrollo de aplicacionesWeb de FrontOffice Demo ENomina
  • 48.
    Desarrollo de aplicacionesWeb de FrontOffice Demo ENomina
  • 49.
    Desarrollo de aplicacionesWeb de FrontOffice Demo Enomina http://www.bbr.cat/presentaciones/videos/EnominaAdf/EnominaAdf.html
  • 50.
  • 51.
    Desarrollo de aplicacionesde BackOffice Demo Outis
  • 52.
    Desarrollo de aplicacionesde BackOffice Demo Outis
  • 53.
  • 54.
    Desarrollo de aplicacionesde BackOffice DEMO: http://www.bbr.cat/presentaciones/videos/Flash_GSGVIA_DEMO/Flash_GSGVIA_DEMO.html
  • 55.
  • 56.
  • 57.
    Desarrollo de aplicacionesMixtas ADF & Forms Demo Forms y ADF
  • 58.
    Desarrollo de aplicaciones SOA Las tareas son ejecutadas y gestionadas desde el “WorkList Application”
  • 59.
    Para todo tipode desarrolladores
  • 60.
    Escoge tu estilode desarrollo
  • 61.
  • 62.
    JSF y JDeveloper10.1.3 Edición Visual de JSF Edición Visual de JSF UI Component Proporciona generación del código de respaldo (doble-click) Mobile WYSIWYG
  • 63.
    JSF y JDeveloper10.1.3 Consola de Edición de Faces Config Consola para Edición productiva de faces-config.xml
  • 64.
    JSF y JDeveloper10.1.3 JSF Page Flow Edición Visual del modelo de navegación de Faces
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
    Desarrollo de aplicacionesJava – ADF para el IPhone Demo: http://www.oracle.com/technology/pub/articles/huang-iphone.html
  • 71.
  • 72.
    La interfaz deusuario tiende al Mashup de aplicaciones
  • 73.
    La interfaz deusuario tiende al Mashup de aplicaciones Next Generation: http://download.oracle.com/otndocs/tech/webcenter/files/owcs_11_oow06_viewlet.html Matrix Social NetWork: http://download.oracle.com/otndocs/tech/webcenter/files/owcs_matrix_demo_viewlet_swf.html
  • 74.
    Portlets Portlets: componentesWeb reusables que permiten ser personalizados y configurados Tecnologías Portlet : Portlets Estándares (JSR 168) Oracle PDK-Java portlets PL/SQL portlets (Portal 10g – portlets locales) Portlet Bridge Specifications for JSF (JSR-301) http://www.jcp.org/en/jsr/detail?id=301 WSRP (JSR-286) http://download.oracle.com/otndocs/tech/webcenter/files/owc_r11_portlet_bridge_demo.html Demo portlet Bridge
  • 75.
    Out-of-the-box Portlets OmniPortletWeb Clipping Rich Text Portlet
  • 76.
    Tecnologías Portlet : JSR 168/WSRP – PDK-Java Browser Consumer (Portal 10g, ADF Application) JSR 168 Portlet PDK-Java Portlet SOAP WSRP
  • 77.
    Construyendo JSR-168/Oracle PDK-JavaPortlet Portlet Wizard disponible desde New Gallery Usa el Wizard para crear el esqueleto del portlet Añade la lógica del portlet
  • 78.
    Desplegando y ConsumiendoPortlets Arranca el contenedor OC4J Crea una conexión al contenedor OC4J Despliega el portlet Registra el Provedor Arrastra y suelta el portlet en tu página JSF 1 2 3 4 Contenedor OC4J JDeveloper 5
  • 79.
    Contexto de Parámetros10001 Parámetro de Formulario: WSRP 2.0 portlet OmniPortlet: PDK-Java portlet
  • 80.
  • 81.
    ADF BC –WS Controller Faces ADF Metadata Services View ADF Faces JSF ADF Model ADF Data Control ADF BC Services Data Access Business Service Persistence Layer ADF BC View ADF BC Entity ADF Bindings Web Service Entity y ViewObjects basados en Web Service
  • 82.
    AppModule WS ControllerFaces ADF Metadata Services View ADF Faces JSF ADF Model ADF Data Control Web Services Data Access Business Service Persistence Layer ADF BC View ADF BC Entity ADF Bindings
  • 83.
    Es el frameworkque Oracle utiliza para el desarrollo de sus aplicaciones
  • 84.
  • 85.
  • 86.
  • 87.
    ADF Faces RC11g – Data Visualization
  • 88.
    Fusion Applications – Data Visualization Graph
  • 89.
    Fusion Applications – Data Visualization Gauge
  • 90.
    Fusion Applications – Data Visualization Geographic Map
  • 91.
    Fusion Applications – Data Visualization Pivot Table
  • 92.
    Fusion Applications – Data Visualization Gantt Chart
  • 93.
    Fusion Applications – Data Visualization Vista Jerárquica
  • 94.
  • 95.
    Conclusiones ADF es el framework de desarrollo estratégico para Oracle. Framework más productivo para desarrollo web del mercado Construido sobre estándares Pensado para todo tipo de desarrollos Pensado para todo tipo de desarrolladores Existen multitud de casos de éxito
  • 96.
    Links de InterésBlog de BBR www.bbr.cat/index.php?option=com_myblog&Itemid=53 Comunidad hispana de desarrolladores ADF www.jdeveloperla.com Página oficial de Oracle de ADF www.oracle.com/technology/products/adf/index.htmlhttp://www.oracle.com/technology/products/adf/index.html Página oficial de Oracle de ADF Faces RC www.oracle.com/technology/products/adf/adffaces/index.html
  • 97.
    [email_address] C/ Aragó,182, 4t, 08011 Barcelona Telèfon 934 731 393 Av. Ramon Folch, 13, 3r, 17001 Girona Telèfon 972 413 638 www.bbr.cat