SlideShare una empresa de Scribd logo
Desarrolla en  Java  con la misma   productividad  que en  Forms Pedro Gallardo Delgado Responsable de Middleware Alejandro Font Consultor tecnológico
Típicos tópicos y preguntas frecuentes… “ La tecnología Java y J2EE es muy complicada” Cuando desarrollas una aplicación J2EE la  productividad cae en picado” “ Sólo los grandes jurús de java se pueden enfrentar  al desarrollo de aplicaciones empresariales” “ ¿Existe un plan formativo de Oracle que  facilite la transferncia de Forms a J2EE?”
Oracle JDeveloper 10G
Oracle JDeveloper 10G Java IDE gratis Herramienta para todos los desarrollos J2EE y XML Portal, BPEL, BI y Wireless Service-Oriented Event-Driven Productividad con Opciones Opciones tecnológicas Opciones en estilos de desarrollo Opciones en servidores de aplicaciones
Herramientas de Desarrollo Oracle  ADF Oracle JDeveloper Productividad Incremento de productividad Código Java Frameworks de Desarrollo Automatización de tareas
Ciclo de Desarrollo  Dise ñ o C ó digo Tuning Despliegue An á lisis Debug y Test Versioning
De Forms a Java ADF Guía de JDeveloper y ADF para desarrolladores
De Forms a Java ADF Guía de JDeveloper y ADF para desarrolladores
Objectos de Aplicación Form, Data Blocks, Relations LOVs, Record Groups Canvases, Windows Visual Builder Crear and Configurar Objectos de Aplicaciones Event-Handler Triggers Extiende el comportamiento por defecto con lógica específica. Libraries  Compartidas de Rutinas De Forms a Java ADF El desarrollador  Forms está familiarizado con los frameworks
Configuración de la Base de Datos Diseño Base de Datos Scripts de creación  sql Componentes de Negocio Conocido como la capa de modelo Componentes de la interficie de usuario Windows, Panels, Pages. Conocido como la capa de Presentación Código compartido Personalizaciones del Framework Rutinas de ayuda De Forms a Java ADF JDeveloper IDE pensado por y para desarrolladores Forms
Lista plana de paquetes PL / SQL Los paquetes contienen Procedimientos y Funciones De Forms a Java ADF Plataforma Común de Funcionalidad
JDK presenta cientos de paquetes Los paquetes contienen clases con funcionalidades ya dadas Organización Jerárquica java.lang.String java.net.URL org.w3.dom.Element orale.jdbc.ResultSet Culaquiera puede crear sus propias librerías Enpaquetadas como archivos *.jar contenedoras de Clases. De Forms a Java ADF Vista de paquetes en JDeveloper
Mapeando Conceptos de Forms en Servicios de Negocio Data Block Canvas Business Data Relation UI-Related Triggers Validation Triggers Transactional Triggers Item Item Item Item Item Item Data Block Canvas Item Item Item Item
Separamos Conceptualmente la parte de Datos Validation &  Transactional Triggers Non-UI Part of Form Data Block Business Data Relation Data Block Item Item Item Item
Si queremos reusar para distintos clientes UI XML Validation &  Transactional Triggers Non-UI Part of Form Data Block Business Data Relation Data Block Item Item Item Item
Terminología  ADF Business Components XML Validation &  Transactional Triggers Application Module View Object Business Data Relation View Object Attrib Attrib Attrib Attrib
Separamos la capa DAO (Query) de la Lógica de Negocio  XML Application Module Business Data View Link Entity Object Validation & Transactional Methods View Object Entity Object Validation & Transactional Methods View Object Attrib Attrib Attrib Attrib Attrib Attrib Attrib Attrib
Empezamos con la capa de datos Tablas EMP
Entity Objects Encapsulan Reglas de Negocio EMP Employee
View Objects Encapsulan Queries SQL ForeignDepts RetiringEmps Employee EMP
Application Module ForeignPensionsApp Detail Master ForeignDepts RetiringEmps Employee EMP
Capa de Presentación ForeignPensionsApp Detail Master ForeignDepts RetiringEmps Employee EMP
ADF Faces Components Examples
Oracle  JHeadStart
Entorno de Desarrollo Java altamente productivo Principios fundamentales: Definición de aplicaciones al estilo 4GL. Totalmente basado en estándares mundialmente aceptados. Generación automática de código fuente Java y XML. Construido sobre la arquitectura Oracle ADF.  ¿Qué es Oracle JHeadstart?
Arquitectura Controller Faces ADF Metadata Services View ADF Faces JSF ADF Model ADF Data Control ADF BC  Services Web  Services Data  Access Business Service Persistence Layer ADF BC View ADF BC Entity ADF Bindings JHeadStart
Proceso de generación ADF BC metadata ADF Business Components JHeadStart Application Definition Wizard Jdeveploper ADF BC Wizard View Controller Model Business Services Application Definition JSF JSP ADF Faces JSF ADF MODEL Data Bindings Data Controls Velocity templates JHeadStart Application Generator
Orientación a la productividad. Desarrollo declarativo. Prototipo iterativo. Bajo coste de entrada. Requiere conocimientos limitados para empezar. Rápido aprendizaje. Reducción de costes de desarrollo y mantenimiento. Aplicaciones consistentes. Permite focalizar los recursos más especializados en la Lógica de negocio de la aplicación. Ventajas
Demostración práctica
Demostración práctica JHeadStart + ADF
Proyectos significativos
Proyectos significativos
Proyectos significativos
Proyectos significativos
Proyectos significativos
Demos Demostración de generación de aplicación J2EE con JDeveloper y JHeadStart  10.1.3.1. http://www.bbr.cat/presentaciones/videos/DemoBBR/DemoBBR.html Demostración de aplicación generada con JDeveloper y JHeadStart 10.1.3 con plantillas y clases personalizadas por BBR. http://www.bbr.cat/presentaciones/videos/Flash_GSGVIA_DEMO/Flash_GSGVIA_DEMO.html
ADF Faces Rich Client Samples
ADF Faces Rich Client Samples
Integración Forms y ADF
Integración Forms – ADF  Puntos Clave Integración en la capa de presentación (View-Controller) Integración en la capa de Negocio (Modelo)
Arquitectura Forms Server Application Server  APLICACIÓN ADF FACES FORMS FMB
Integración Forms - ADF Faces  Integración del formulario en una página JSF Eventos ADF JSF ADF FACES FORMS Contexto
Integración Forms - ADF Faces Puntos Clave Comunicación de JSF a Forms- Forms a JSF Productividad-Drag-and-Drop en Jdeveloper Se cede el control de la aplicación a JSF Jinitiator applet no -Applet,JDK
Comunicación: Jsf –Forms Forms-Jsf JavaScript Clase applet-LiveConnect Custom _PJC PL/SQL Triggers
Ejemplos de Comunicación:  Jsf –Forms Forms-Jsf De JSF a Forms: Paso de parámetros a Forms Parámetros de inicialización, Maestro/ Detalle Botónes JSF que lanzan eventos Forms commit_form,Up,Down De Forms a JSF : ParámetroPaso de parámetros a JSF Parámetros de inicialización, Maestro/ Detalle Botónes Forms que lanzan eventos JSF Navegaciones,Procesos Lanzar metodos Javascript Mensajes javascript
Links de Interés http://www.oracle.com/technology/pub/articles/wilfred-adf-forms.html http://www.oratransplant.nl/oracle-forms-as-web-component/ http://www.commit-consulting.com/oraformsfaces/
OraFormsFaces
Integración Forms con SOA (Modelo) Web Services JPC UI MiddleTier BD Jinitiator Applet Forms Server PL / SQL HTML Javascript Data Binding & Data Control JSF & ADF Faces JSF ADF Business Components Service Layer View Controller Model ( JSR 227 ) Business Services Data Source Client
Caso de Estudio - Eurotransplant  Migración de una aplicación cliente/servidor a web Necesidad de tener acceso remoto a la apliacción de una forma segura Necesidad de esperiencia de usuarío única Desarrollado  usando Jdeveloper y ADF Required “off-line” application to run in operating theatre with no network access Necesidad de ejecutar aplicaciones “off-line” Desarrollo de aplicación Swing con JDeveloper y ADF Creación de una extensión de Jdeveloper por parte de Eurotransplant (OraFormsFaces).  Reaprovechamiento de su conocimientos Forms/Database
<Insert Picture Here> “ Queremos desplegar un modelo evolutivo, no uno revolucionario.  En el pasado, la adopción de una nueva tecnología implicaba el abandono de la antigua. Con  SOA  y  Oracle BPEL Process Manager , se demuestra que podemos hacer que nuestros sistemas existentes sean capaces de ser explotados y reusados desde las nuevas arquitecturas orientadas a servicios ( SOA ).”  Wilfred van der Deijl Arquitecto, Eurotransplant
Más Casos de Estudio Más detalles en“ Oracle Forms and SOA: The Whys and Hows for your business ” Eurotransplant Migros TietoEnator Oracle Magazine Nov/Dec 2007:  “Perform with SOA” May/Jun 2007: “Journey to the Center of Fusion” We Love It ( http://weloveit.nl ) Informes Gartner
Conclusión
Típicos tópicos y preguntas frecuentes… “ La tecnología Java y J2EE es muy complicada” La curva de aprendizaje es elevada pero ahora existen frameworks, metaframeworks, herramientas declarativas al estilo de 4GL  que permiten reducir la curva de aprendizaje y te da productividad desde el minuto cero.
Típicos tópicos y preguntas frecuentes… Cuando desarrollas una aplicación J2EE la productividad cae en picado”  Puedes empezar a pensar en desarrollar apliaciones empresariales J2EE con una productividad extremadamente alta. Similar a la de Forms o superior !!
Típicos tópicos y preguntas frecuentes… “ Sólo los grandes gurús de java se pueden enfrentar al desarrollo de aplicaciones empresariales”  Jdeveloper nace con la vocación de ser una herramienta de desarrollo para todos. Para los grandes gurús y para los desarrolladores noveles que se inician en Java / J2EE. Te permite desarrollar siempre de dos formas. Declarativamente o codificando. Tu elijes tu estilo. Jdeveloper te ofrece libertad.
Típicos tópicos y preguntas frecuentes… “ ¿Existe un plan formativo de Oracle que facilite la transferncia de Forms a J2EE?”  ADF es el framework idóneo para desarrolladores Forms que quieran iniciarse en el desarrollo de aplicaciones empresariales J2EE. Existe una gran cantidad de contenido en OTN destinado a “mapear” los conocimientos de Forms a ADF.
Estrategia de Herramientas de Desarrollo Compromiso a largo plazo con Forms Actualiza y integra Desarrolla pensando en servicios Establece una estrategia hacia SOA  Piensa en Grande y da pequeños pasos Consigue en J2EE/ADF la misma productividad que en Forms Desarrollo visual declarativo Reaprovecha tu inversión y conocimientos en Forms
 
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
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 &quot;anything to anything&quot; 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 &quot;transport&quot; 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 &quot;chunks&quot; 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 &quot;see&quot; 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.
Trinidad MyFaces http://wiki.apache.org/myfaces/FrontPage http://myfaces.apache.org/      Implemtación de ADF Faces que Oracle libera a la comunidad

Más contenido relacionado

PPT
Adf. El Framework De Desarrollo De Fusion V7.0
PPTX
A todo vapor con oracle forms & services laouc
PPT
J Headstart, EvolucióN De Forms A Adf
PDF
Modernizacion Oracle Forms
PPTX
Diplomado Técnico SQL Server 2012 - Sesión 6/8
PDF
Weblogic arquitectura-orientada-soa-427129-esa(1)
PPT
Experiencias Usando la Tecnología ADF
PDF
Migacion forms apex
Adf. El Framework De Desarrollo De Fusion V7.0
A todo vapor con oracle forms & services laouc
J Headstart, EvolucióN De Forms A Adf
Modernizacion Oracle Forms
Diplomado Técnico SQL Server 2012 - Sesión 6/8
Weblogic arquitectura-orientada-soa-427129-esa(1)
Experiencias Usando la Tecnología ADF
Migacion forms apex

La actualidad más candente (20)

PPT
De Forms a Oracle Fusion Middleware
PDF
Alternativas evolución para Forms Reports
PPT
Introduccion Aplicaciones Web en java j2ee
PPS
Aplicaciones empresariales Java EE en la nube
PDF
Sesion 3. desarrollo de aplicaciones jee
PPTX
Introdución a aplicaciones web en java
PDF
Introducción a java EE 7
PPT
Cuore Málaga 2008
PPTX
Weblogic server 12c agosto 2012
PPTX
PPTX
Arquitectura y diseño de aplicaciones Java EE
PDF
Presentación Webinar Oracle APEX
PDF
Seminario de programación Java, con Apache Maven, J2EE, JPA, Primefaces
PDF
Evolución a oracle weblogic server 11g
PPT
CDI para Java EE 7
PPT
Mejores a nuestros proyectos de Software
PDF
Atsistemas Presentacion
PPTX
Qué es jdbc
De Forms a Oracle Fusion Middleware
Alternativas evolución para Forms Reports
Introduccion Aplicaciones Web en java j2ee
Aplicaciones empresariales Java EE en la nube
Sesion 3. desarrollo de aplicaciones jee
Introdución a aplicaciones web en java
Introducción a java EE 7
Cuore Málaga 2008
Weblogic server 12c agosto 2012
Arquitectura y diseño de aplicaciones Java EE
Presentación Webinar Oracle APEX
Seminario de programación Java, con Apache Maven, J2EE, JPA, Primefaces
Evolución a oracle weblogic server 11g
CDI para Java EE 7
Mejores a nuestros proyectos de Software
Atsistemas Presentacion
Qué es jdbc
Publicidad

Similar a 4 Jhs J Developer Adf (20)

PPT
Bbr Cuore V3
PPT
1 Estrategia De Cs A Soa
PDF
[ES] Introduccion a ADF Framework
PPTX
Webinar oracle adf12c… descubre todo su potencial
PPT
2 Integracion Forms Bpel
PPT
Presentacion Microsoft
PDF
Manual 2014 i 04 lenguaje de programación ii (0870)
PPT
PPT
Arquitectura de aplicaciones en n-capas para GT
PPTX
Jbuilder
PPT
Sqlserver
PPTX
SEMANA 1 Introduccion.pptx
PDF
01_ppt_introduccion_spring_mmmmmmmmm.pdf
PDF
[ES] Introducción a Java EE 7 & HTML 5
PPT
spring
PDF
Desarrollo de aplicaciones .net
PDF
Desarrollo de aplicaciones .net
PDF
Modulo Jee Intro Pos Fp Une
PPTX
Oracle Fusion Middleware
PDF
[ES] Fundamentos de Java Enterprise Edition
Bbr Cuore V3
1 Estrategia De Cs A Soa
[ES] Introduccion a ADF Framework
Webinar oracle adf12c… descubre todo su potencial
2 Integracion Forms Bpel
Presentacion Microsoft
Manual 2014 i 04 lenguaje de programación ii (0870)
Arquitectura de aplicaciones en n-capas para GT
Jbuilder
Sqlserver
SEMANA 1 Introduccion.pptx
01_ppt_introduccion_spring_mmmmmmmmm.pdf
[ES] Introducción a Java EE 7 & HTML 5
spring
Desarrollo de aplicaciones .net
Desarrollo de aplicaciones .net
Modulo Jee Intro Pos Fp Une
Oracle Fusion Middleware
[ES] Fundamentos de Java Enterprise Edition
Publicidad

Más de Pedro Gallardo (10)

PPTX
201401 at sistemas ibm websphere commerce v2
PPTX
201208 presentación linea de servicios oracle
PPTX
201103 cuore forms2_adf v0.2
PPTX
2012 PresentacióN Linea De Servicios Oracle
PPTX
Integracion Continua
PPT
Bbrsoa Lean Sigma V4
PDF
Cv Pedro Gallardo V1 En
PDF
Cv Pedro Gallardo V7
PDF
Oracle Bpa Suite Overview
PPT
Roadmap2Soa
201401 at sistemas ibm websphere commerce v2
201208 presentación linea de servicios oracle
201103 cuore forms2_adf v0.2
2012 PresentacióN Linea De Servicios Oracle
Integracion Continua
Bbrsoa Lean Sigma V4
Cv Pedro Gallardo V1 En
Cv Pedro Gallardo V7
Oracle Bpa Suite Overview
Roadmap2Soa

Último (20)

PPT
El-Gobierno-Electrónico-En-El-Estado-Bolivia
DOCX
Zarate Quispe Alex aldayir aplicaciones de internet .docx
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PPTX
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
PDF
Estrategia de apoyo tecnología grado 9-3
PDF
Calidad desde el Docente y la mejora continua .pdf
PPTX
REDES INFORMATICAS REDES INFORMATICAS.pptx
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PDF
Diapositiva proyecto de vida, materia catedra
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PDF
taller de informática - LEY DE OHM
PPTX
Presentación de Redes de Datos modelo osi
PDF
Estrategia de apoyo tecnología miguel angel solis
PDF
CyberOps Associate - Cisco Networking Academy
PPT
Que son las redes de computadores y sus partes
PDF
clase auditoria informatica 2025.........
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PPTX
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
El-Gobierno-Electrónico-En-El-Estado-Bolivia
Zarate Quispe Alex aldayir aplicaciones de internet .docx
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
Estrategia de apoyo tecnología grado 9-3
Calidad desde el Docente y la mejora continua .pdf
REDES INFORMATICAS REDES INFORMATICAS.pptx
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
Diapositiva proyecto de vida, materia catedra
Presentación PASANTIAS AuditorioOO..pptx
taller de informática - LEY DE OHM
Presentación de Redes de Datos modelo osi
Estrategia de apoyo tecnología miguel angel solis
CyberOps Associate - Cisco Networking Academy
Que son las redes de computadores y sus partes
clase auditoria informatica 2025.........
historia_web de la creacion de un navegador_presentacion.pptx
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx

4 Jhs J Developer Adf

  • 1. Desarrolla en Java con la misma productividad que en Forms Pedro Gallardo Delgado Responsable de Middleware Alejandro Font Consultor tecnológico
  • 2. Típicos tópicos y preguntas frecuentes… “ La tecnología Java y J2EE es muy complicada” Cuando desarrollas una aplicación J2EE la productividad cae en picado” “ Sólo los grandes jurús de java se pueden enfrentar al desarrollo de aplicaciones empresariales” “ ¿Existe un plan formativo de Oracle que facilite la transferncia de Forms a J2EE?”
  • 4. Oracle JDeveloper 10G Java IDE gratis Herramienta para todos los desarrollos J2EE y XML Portal, BPEL, BI y Wireless Service-Oriented Event-Driven Productividad con Opciones Opciones tecnológicas Opciones en estilos de desarrollo Opciones en servidores de aplicaciones
  • 5. Herramientas de Desarrollo Oracle ADF Oracle JDeveloper Productividad Incremento de productividad Código Java Frameworks de Desarrollo Automatización de tareas
  • 6. Ciclo de Desarrollo Dise ñ o C ó digo Tuning Despliegue An á lisis Debug y Test Versioning
  • 7. De Forms a Java ADF Guía de JDeveloper y ADF para desarrolladores
  • 8. De Forms a Java ADF Guía de JDeveloper y ADF para desarrolladores
  • 9. Objectos de Aplicación Form, Data Blocks, Relations LOVs, Record Groups Canvases, Windows Visual Builder Crear and Configurar Objectos de Aplicaciones Event-Handler Triggers Extiende el comportamiento por defecto con lógica específica. Libraries Compartidas de Rutinas De Forms a Java ADF El desarrollador Forms está familiarizado con los frameworks
  • 10. Configuración de la Base de Datos Diseño Base de Datos Scripts de creación sql Componentes de Negocio Conocido como la capa de modelo Componentes de la interficie de usuario Windows, Panels, Pages. Conocido como la capa de Presentación Código compartido Personalizaciones del Framework Rutinas de ayuda De Forms a Java ADF JDeveloper IDE pensado por y para desarrolladores Forms
  • 11. Lista plana de paquetes PL / SQL Los paquetes contienen Procedimientos y Funciones De Forms a Java ADF Plataforma Común de Funcionalidad
  • 12. JDK presenta cientos de paquetes Los paquetes contienen clases con funcionalidades ya dadas Organización Jerárquica java.lang.String java.net.URL org.w3.dom.Element orale.jdbc.ResultSet Culaquiera puede crear sus propias librerías Enpaquetadas como archivos *.jar contenedoras de Clases. De Forms a Java ADF Vista de paquetes en JDeveloper
  • 13. Mapeando Conceptos de Forms en Servicios de Negocio Data Block Canvas Business Data Relation UI-Related Triggers Validation Triggers Transactional Triggers Item Item Item Item Item Item Data Block Canvas Item Item Item Item
  • 14. Separamos Conceptualmente la parte de Datos Validation & Transactional Triggers Non-UI Part of Form Data Block Business Data Relation Data Block Item Item Item Item
  • 15. Si queremos reusar para distintos clientes UI XML Validation & Transactional Triggers Non-UI Part of Form Data Block Business Data Relation Data Block Item Item Item Item
  • 16. Terminología ADF Business Components XML Validation & Transactional Triggers Application Module View Object Business Data Relation View Object Attrib Attrib Attrib Attrib
  • 17. Separamos la capa DAO (Query) de la Lógica de Negocio XML Application Module Business Data View Link Entity Object Validation & Transactional Methods View Object Entity Object Validation & Transactional Methods View Object Attrib Attrib Attrib Attrib Attrib Attrib Attrib Attrib
  • 18. Empezamos con la capa de datos Tablas EMP
  • 19. Entity Objects Encapsulan Reglas de Negocio EMP Employee
  • 20. View Objects Encapsulan Queries SQL ForeignDepts RetiringEmps Employee EMP
  • 21. Application Module ForeignPensionsApp Detail Master ForeignDepts RetiringEmps Employee EMP
  • 22. Capa de Presentación ForeignPensionsApp Detail Master ForeignDepts RetiringEmps Employee EMP
  • 25. Entorno de Desarrollo Java altamente productivo Principios fundamentales: Definición de aplicaciones al estilo 4GL. Totalmente basado en estándares mundialmente aceptados. Generación automática de código fuente Java y XML. Construido sobre la arquitectura Oracle ADF. ¿Qué es Oracle JHeadstart?
  • 26. Arquitectura Controller Faces ADF Metadata Services View ADF Faces JSF ADF Model ADF Data Control ADF BC Services Web Services Data Access Business Service Persistence Layer ADF BC View ADF BC Entity ADF Bindings JHeadStart
  • 27. Proceso de generación ADF BC metadata ADF Business Components JHeadStart Application Definition Wizard Jdeveploper ADF BC Wizard View Controller Model Business Services Application Definition JSF JSP ADF Faces JSF ADF MODEL Data Bindings Data Controls Velocity templates JHeadStart Application Generator
  • 28. Orientación a la productividad. Desarrollo declarativo. Prototipo iterativo. Bajo coste de entrada. Requiere conocimientos limitados para empezar. Rápido aprendizaje. Reducción de costes de desarrollo y mantenimiento. Aplicaciones consistentes. Permite focalizar los recursos más especializados en la Lógica de negocio de la aplicación. Ventajas
  • 36. Demos Demostración de generación de aplicación J2EE con JDeveloper y JHeadStart 10.1.3.1. http://www.bbr.cat/presentaciones/videos/DemoBBR/DemoBBR.html Demostración de aplicación generada con JDeveloper y JHeadStart 10.1.3 con plantillas y clases personalizadas por BBR. http://www.bbr.cat/presentaciones/videos/Flash_GSGVIA_DEMO/Flash_GSGVIA_DEMO.html
  • 37. ADF Faces Rich Client Samples
  • 38. ADF Faces Rich Client Samples
  • 40. Integración Forms – ADF Puntos Clave Integración en la capa de presentación (View-Controller) Integración en la capa de Negocio (Modelo)
  • 41. Arquitectura Forms Server Application Server APLICACIÓN ADF FACES FORMS FMB
  • 42. Integración Forms - ADF Faces Integración del formulario en una página JSF Eventos ADF JSF ADF FACES FORMS Contexto
  • 43. Integración Forms - ADF Faces Puntos Clave Comunicación de JSF a Forms- Forms a JSF Productividad-Drag-and-Drop en Jdeveloper Se cede el control de la aplicación a JSF Jinitiator applet no -Applet,JDK
  • 44. Comunicación: Jsf –Forms Forms-Jsf JavaScript Clase applet-LiveConnect Custom _PJC PL/SQL Triggers
  • 45. Ejemplos de Comunicación: Jsf –Forms Forms-Jsf De JSF a Forms: Paso de parámetros a Forms Parámetros de inicialización, Maestro/ Detalle Botónes JSF que lanzan eventos Forms commit_form,Up,Down De Forms a JSF : ParámetroPaso de parámetros a JSF Parámetros de inicialización, Maestro/ Detalle Botónes Forms que lanzan eventos JSF Navegaciones,Procesos Lanzar metodos Javascript Mensajes javascript
  • 46. Links de Interés http://www.oracle.com/technology/pub/articles/wilfred-adf-forms.html http://www.oratransplant.nl/oracle-forms-as-web-component/ http://www.commit-consulting.com/oraformsfaces/
  • 48. Integración Forms con SOA (Modelo) Web Services JPC UI MiddleTier BD Jinitiator Applet Forms Server PL / SQL HTML Javascript Data Binding & Data Control JSF & ADF Faces JSF ADF Business Components Service Layer View Controller Model ( JSR 227 ) Business Services Data Source Client
  • 49. Caso de Estudio - Eurotransplant Migración de una aplicación cliente/servidor a web Necesidad de tener acceso remoto a la apliacción de una forma segura Necesidad de esperiencia de usuarío única Desarrollado usando Jdeveloper y ADF Required “off-line” application to run in operating theatre with no network access Necesidad de ejecutar aplicaciones “off-line” Desarrollo de aplicación Swing con JDeveloper y ADF Creación de una extensión de Jdeveloper por parte de Eurotransplant (OraFormsFaces). Reaprovechamiento de su conocimientos Forms/Database
  • 50. <Insert Picture Here> “ Queremos desplegar un modelo evolutivo, no uno revolucionario. En el pasado, la adopción de una nueva tecnología implicaba el abandono de la antigua. Con SOA y Oracle BPEL Process Manager , se demuestra que podemos hacer que nuestros sistemas existentes sean capaces de ser explotados y reusados desde las nuevas arquitecturas orientadas a servicios ( SOA ).” Wilfred van der Deijl Arquitecto, Eurotransplant
  • 51. Más Casos de Estudio Más detalles en“ Oracle Forms and SOA: The Whys and Hows for your business ” Eurotransplant Migros TietoEnator Oracle Magazine Nov/Dec 2007: “Perform with SOA” May/Jun 2007: “Journey to the Center of Fusion” We Love It ( http://weloveit.nl ) Informes Gartner
  • 53. Típicos tópicos y preguntas frecuentes… “ La tecnología Java y J2EE es muy complicada” La curva de aprendizaje es elevada pero ahora existen frameworks, metaframeworks, herramientas declarativas al estilo de 4GL que permiten reducir la curva de aprendizaje y te da productividad desde el minuto cero.
  • 54. Típicos tópicos y preguntas frecuentes… Cuando desarrollas una aplicación J2EE la productividad cae en picado” Puedes empezar a pensar en desarrollar apliaciones empresariales J2EE con una productividad extremadamente alta. Similar a la de Forms o superior !!
  • 55. Típicos tópicos y preguntas frecuentes… “ Sólo los grandes gurús de java se pueden enfrentar al desarrollo de aplicaciones empresariales” Jdeveloper nace con la vocación de ser una herramienta de desarrollo para todos. Para los grandes gurús y para los desarrolladores noveles que se inician en Java / J2EE. Te permite desarrollar siempre de dos formas. Declarativamente o codificando. Tu elijes tu estilo. Jdeveloper te ofrece libertad.
  • 56. Típicos tópicos y preguntas frecuentes… “ ¿Existe un plan formativo de Oracle que facilite la transferncia de Forms a J2EE?” ADF es el framework idóneo para desarrolladores Forms que quieran iniciarse en el desarrollo de aplicaciones empresariales J2EE. Existe una gran cantidad de contenido en OTN destinado a “mapear” los conocimientos de Forms a ADF.
  • 57. Estrategia de Herramientas de Desarrollo Compromiso a largo plazo con Forms Actualiza y integra Desarrolla pensando en servicios Establece una estrategia hacia SOA Piensa en Grande y da pequeños pasos Consigue en J2EE/ADF la misma productividad que en Forms Desarrollo visual declarativo Reaprovecha tu inversión y conocimientos en Forms
  • 58.  
  • 59. 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.     
  • 60. 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
  • 61. 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 &quot;anything to anything&quot; 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.
  • 62. 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 &quot;transport&quot; 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 &quot;chunks&quot; 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 &quot;see&quot; 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.
  • 63. Trinidad MyFaces http://wiki.apache.org/myfaces/FrontPage http://myfaces.apache.org/      Implemtación de ADF Faces que Oracle libera a la comunidad

Notas del editor

  • #7: Here is a picture of how this is approached in Oracle JDeveloper. We take you from the design tasks of data and application modelling through to the build test and deploy cycle. And within this environment we provide a rich infrastructure for software configuration management and interoperating and integrating with your existing environment. This complete and integrated style of development has been the hallmark of successful development environments for years. Now with a Oracle JDeveloper offering all of this capability in one product, you have the opportunity to see it in action in the J2EE and Java world. What is nice is we provide this not only within an integrated toolset, but within a tool set that cooperates with other development environments you might already be using. Using Apache Ant for system builds, maybe Junit for testing? Oracle Jdeveloper lets them plug in directly to its platform. Using Clearcase or CVS for configuration management – they are supported out of the box. As a result, JDeveloper works as a single integrated environment that your corporation can standardize on or seamlessly integrates into a complex development environments that might have multiple IDE’s and 3 rd parties … the end result is a seamless experience for the developers using JDeveloper.
  • #24: Some of the ADF Faces components that you use to create your user interfaces
  • #41: -Integracion de paleta de componentes dentro de Jdeveloper,para mantener la productividad -Podemos tener componentes JSF, como por ejemplo botones, que lancen eventos de Forms -Podemos tener componentes JSF, dentro del componente form y lanzar navegaciones o preocesos JSF -Posibilidad de esconder parte del formulario:diseño en tiempo de ejecucion -La navegacion se cede a JSf y forms es un componente embedido -Usamos applet de Sun no Jinitiator
  • #44: - Integración de formularios Forms en ADF Faces -Podemos tener componentes JSF, como por ejemplo botones, que lancen eventos de Forms -Podemos tener componentes JSF, dentro del componente form y lanzar navegaciones o preocesos JSF -Integracion de paleta de componentes dentro de Jdeveloper,para mantener la productividad -Posibilidad de esconder parte del formulario:diseño en tiempo de ejecucion -La navegacion se cede a JSf y forms es solo un componente embedido -Usamos applet de Sun no Jinitiator
  • #45: La comunicacion entre los dos “mundos” se basa en Javascript y LiveConnect(api que permite lanzar eventos java desde js). En Forms 11 esta caracteristica vendra por defecto. -Desde la capa de JSF lanzamos eventos js que los captura el applet y los pasa a PJC que lanza el PL/sql trigger correspond.
  • #49: Alejandro: En el siguiente diagrama mostraremos la arquitectura de una aplicacíón Forms vs una apliación ADF / J2EE. Inicialmente tenemos la capa de presentación (o interfaz de usuario), la capa de Middletier y la base de datos. Cuando desarrollamos en Forms la interfaz de usuario se explota desde el navegador web ejecutando las apliaciones en un Applet (sobre una máquina virtual propietria de Oracle -Jinitiator). En las úlitmas versiones de Forms es posible ejecutar Forms sobre un Applet corriendo en la máquina virtual estandart de SUN (jdlk 1.5) . De esta forma encontramos que en la capa de UI de un aplicación Forms tenemos Applet / Jinitiator. En la capa de Middletier se ejecutaría el Forms Server que invocaría procesos codificados en PL/SQL que viven dentro de la base de datos. Por otro lado si empezamos a desarrollar en J2EE tendríamos la siguiente distribución de componentes/tecnologías por capas …. A la hora de poder compartir y explotar la lógica de negocio desde los dos clientes (Forms y ADF) recomendamos: 1- Bajar toda la lógica de negocio a la capa de base de datos 2- Publicar los componentes de negocio mediante WebServices 3- Consumir los servicios desde los dos clientes De esta forma la lógica de negocio se implementará una única vez y se podrá reutilizar y explotar desde cualquier cliente. Dentro de la Business Services Layer (ADF BC y PL/SQL) son los responsables de de contener la lógica de negocio.
  • #54: Jordi. “ La tecnología Java y J2EE es muy complicada”  La curva de aprendizaje es elevada pero ahora existen frameworks, metaframeworks, herramientas declarativas al estilo de 4GL que permiten reducir la curva de aprendizaje y te da productividad desde el minuto cero. Cuando desarrollas una aplicación J2EE la productividad cae en picado”  Puedes empezar a pensar en desarrollar apliaciones empresariales J2EE con una productividad extremadamente alta. Similar a la de Forms o superior !! “ Sólo los grandes jurús de java se pueden enfrentar al desarrollo de aplicaciones empresariales”  Jdeveloper nace con la vocación de ser una herramienta de desarrollo para todos. Para los grandes jurús y para los desarrolladores noveles que se inician en Java / J2EE. Te permite desarrollar siempre de dos formas. Declarativamente o codificando. Tu elijes tu estilo. Jdeveloper te ofrece libertad. “ ¿Existe un plan formativo de Oracle que facilite la transferncia de Forms a J2EE?”  ADF es el framework idóneo para desarrolladores Forms que quieran iniciarse en el desarrollo de aplicaciones empresariales J2EE. Existe una gran cantidad de contenido en OTN destinado a “mapear” los conocimientos de Forms a ADF.
  • #55: Jordi. Cuando desarrollas una aplicación J2EE la productividad cae en picado”  Puedes empezar a pensar en desarrollar apliaciones empresariales J2EE con una productividad extremadamente alta. Similar a la de Forms o superior !! “ Sólo los grandes jurús de java se pueden enfrentar al desarrollo de aplicaciones empresariales”  Jdeveloper nace con la vocación de ser una herramienta de desarrollo para todos. Para los grandes jurús y para los desarrolladores noveles que se inician en Java / J2EE. Te permite desarrollar siempre de dos formas. Declarativamente o codificando. Tu elijes tu estilo. Jdeveloper te ofrece libertad. “ ¿Existe un plan formativo de Oracle que facilite la transferncia de Forms a J2EE?”  ADF es el framework idóneo para desarrolladores Forms que quieran iniciarse en el desarrollo de aplicaciones empresariales J2EE. Existe una gran cantidad de contenido en OTN destinado a “mapear” los conocimientos de Forms a ADF.
  • #56: Jordi. “ Sólo los grandes jurús de java se pueden enfrentar al desarrollo de aplicaciones empresariales”  Jdeveloper nace con la vocación de ser una herramienta de desarrollo para todos. Para los grandes jurús y para los desarrolladores noveles que se inician en Java / J2EE. Te permite desarrollar siempre de dos formas. Declarativamente o codificando. Tu elijes tu estilo. Jdeveloper te ofrece libertad. “ ¿Existe un plan formativo de Oracle que facilite la transferncia de Forms a J2EE?”  ADF es el framework idóneo para desarrolladores Forms que quieran iniciarse en el desarrollo de aplicaciones empresariales J2EE. Existe una gran cantidad de contenido en OTN destinado a “mapear” los conocimientos de Forms a ADF.
  • #57: Jordi. “ ¿Existe un plan formativo de Oracle que facilite la transferncia de Forms a J2EE?”  ADF es el framework idóneo para desarrolladores Forms que quieran iniciarse en el desarrollo de aplicaciones empresariales J2EE. Existe una gran cantidad de contenido en OTN destinado a “mapear” los conocimientos de Forms a ADF.