Plinio Arbizu_ Curso ADF 11g - Parte 2

download Plinio Arbizu_ Curso ADF 11g - Parte 2

of 11

description

ADF ORACLE

Transcript of Plinio Arbizu_ Curso ADF 11g - Parte 2

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    Sobre experiencias con las tecnologas Oracle ADF, WebCenter.

    Plinio Arbizu

    1.Curso ADF 11g 2.Artculos ADF 3.Eventos 4. Curso WebCenter 11g

    Saturday, 31 December 2011

    Curso ADF 11g - Parte 2

    Tema: Creacin de Componentes de Negocio.

    Como se comento en la primera parte. Las aplicaciones ADF estn compuesto de dos proyectos un asociado al modelo y otra a la parte WEB. Lo que desarrollaremos en este capitulo es lo asociado a la parte de modelo.

    Requerimiento:

    Oracle Jdeveloper 11g. 11.1.1.3

    Oracle Database Express 11g

    Haber culminado la parte 1 del tutorial. Ir al capitulo 1

    1. Conceptos Bsicos. La existencia de componentes de negocio se ha vuelto comn en cualquier framework moderno. ADF cuenta por ello con un framework denominado ADF Business Components cuya arquitectura esta compuesta principalmente de tres tipos de componentes.

    Entity Objects: Representan al modelo de datos en la capa de negocio. Entre sus caractersticas podemos mencionar:

    Brindan la capacidad del mapeo O/R

    Alojan las reglas de negocio y las validaciones de dato

    Aaden funcionalidades de caching

    Permite representar una tabla como un Entity Object

    View Object : Representa a un grupo de datos (coleccin) que se pudo haber generado en base a las entidades a un query de base de datos. Sus caractersticas son :

    Se puede basar en uno mas EO para mostrar un grupo de datos a los clientes de las aplicaciones

    Genera un sentencia SQL que representa el grupo de datos obtenidos

    Presenta la informacin de la capa de Business Service

    Cuenta con capacidades de ordenar y filtrar la informacin seleccionada

    Application Module : Define el facade de la aplicacin. Es decir el componente que aloja las reglas de negocio en el framework.

    Manejan las transacciones

    Agrupa a los componentes que son expuestos al resto de capas de la aplicacin

    Implementa las reglas de negocio que tendr la aplicacin y que usar los View Objects para extraer la informacin.

    Grficamente podramos definir la arquitectura de la siguiente manera

    Search This Blog

    Web 2.0 Solutions with Oracle WebCenter 11g

    Plinio Arbizu

    Consultor orientado al desarrollo de soluciones sobre Oracle Fusion Middleware. Oracle ACE Director y Coautor del libro "Web 2.0 Solutions with Oracle WebCenter".

    View my complete profile

    Mi Informacin

    Seguir

    Blog Archive

    0 Ms Siguiente blog Crear un blog Acceder

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    En la figura se muestra como sera la distribucin de componentes. Este escenario servira para un sistema de matriculas. Note que el modelo de datos son representados como entidades y generalmente mapearan a las tablas de base de datos.

    Los View Objects (de color rojo) estn asociados a los grupos de datos (cursores, colecciones) que se usarn los mtodos de negocio que se implementarn en el Modulo de aplicaciones. En esta caso tenemos una vista que recuperar informacin de los alumnos matriculados por curso. Obviamente las entidades involucradas sern la entidad Alumnos y Cursos. Por otro lado, tenemos otra vista Empresas Activas que ofrecer todas empresas activas, las cuales se podran interpretar por un indicar de actividad cuando se defina la consulta.

    EL ltimo elemento a desarrollar ser el mdulo de aplicaciones. Este componente define la reglas de negocio de la aplicaciones. Si hiciramos un paralelo con componentes en la base de datos, el mdulo de aplicaciones sera los store procedures.

    En el caso del sistema de matriculas, el modulo de aplicaciones implementara los mtodos de empezarProcesoMatricula() registrarMatricula().

    Ahora, luego de conocer los principios de ADF Business Components desarrollemos un ejercicio prctico al respecto.

    El proceso de creacin de componentes, deber cubrir lo siguientes pasos :

    Mapear componentes de negocio en base a modelo de datos. En este paso se crearn entidades, View Objects y el mdulo de aplicacin. Este paso es muy sencillo, y prcticamente lo realiza la herramienta.

    Personalizar los componentes . En esta etapa si es necesario adaptar lo que el framework te ofrece a tus necesidades. Recuerde que el framework reduce las lneas de cdigo que debemos programar, pero nunca lo elimina. Este paso es un buen ejemplo de eso.

    Desarrollemos los pasos indicados anteriores

    MAPEO DE COMPONENTES.

    1. Haciendo clic derecho sobre el proyecto Modelo, elija la opcin New.

    2.A continuacin, aparecer la galeria de componentes. Esta galeria ofrece la relacin de componentes que se pueden incluir en la aplicacin. Al elegir la categora ADF Business Components, podremos incluir los Business Componentes que describimos al inicio de este post. Para empezar crearemos las entidades, para esta eso elija la opcin Entity Object y haga OK

    image

    2014 (1)

    2013 (5)

    2012 (21)

    2011 (9) December (3)

    Curso ADF 11g - Parte 2

    Curso ADF 11g - Parte 1

    Copiar y Pegar de EXCEL a ADF

    October (5)

    September (1)

    2010 (1)

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    3. La Siguiente pantalla indicar que usar la conexin Ventas que creamos en la primera parte del curso.

    4. A continuacin aparecer el asistente para crear la entidad. Asignemos los siguientes valores :

    Package : com.ventas.model.entities (simplemente estamos definiendo un paquete donde tendremos las entidades llamado entities)

    Name: Cliente (Nombre de la entidad, no tiene que coincidir con el nombre de la tabla asociada)

    Scheme Object: Asignemos sobre este campos la tabla Cliente. Use el botn browse para que el asistente ubique la tabla. Pulse Next.

    5. Mantenga los valores por default en el resto de pasos. Para eso simplemente pulse Next hasta el paso 6.

    6. La ltima pantalla brinda un resumen de lo que la herramienta va a construir. Pulse Finish para culminar la creacin del componente.

    image

    image

    image

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    7. Repita los pasos 4,5 y 6 para crear las entidades Producto, Movimiento y Detalle en base a las tablas de nuestro modelo.

    8. Note que se han creado unos componentes en rojo, denominados Asociaciones. Las asociaciones permiten relacionar entidades para poder acceder a su informacin.

    9 Para poder entenderlo imagine como diseara las clases Cliente y Movimiento. En ese escenario, probablemente usted tendra una clase Cliente y un atributo del tipo Coleccin que agrupe a los movimientos asociados a ese cliente. Bien, en este framework, se modela de manera distinta, en vez de definir una collection de movimientos relacionadas a la entidad cliente, lo que se hace es crear una asociacin entre ambas entidades. Obviamente lo que ha hecho el asistente es tomar las foreing keys de la base de datos y en base a eso crear las asociaciones. La pregunta obvia es como se define la cardinalidad de ambas entidades, pues para eso simplemente haga doble clic sobre cualquiera de las asociaciones, elija la categoria RelationShip y pulsando el botn editar ver las entidades involucradas en la relacin y la cardinalidad, en este caso 1 a *

    image

    image

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    10 .A continuacin crearemos las vistas. En este caso, las vistas dependern de las entidades, aunque las vistas podran no depender de una entidad sino directamente en base a una consulta SQL.

    Bien para crear una vista puede realizar un procedimiento similar a lo mostrado en el caso anterior, eligiendo el componente View Objet en vez de Enttity Object como haremos a continuacin haciendo clic derecho sobre una de las entidades, por ejemplo Cliente, y eligiendo la opcin New Default View Object

    9. Cambie el paquete destino, por queries y defina el nombre con el postfijo VO, por ejemplo ClienteVO. Pulse Ok

    10. Repita el procedimiento para crear las Vistas Producto VO, MovimientoVO y DetalleVO .

    11. Usted debera tener los siguientes componentes, al culminar el ltimo paso.

    image

    image

    image

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    12. As como las entidades se relacionan para permitir el acceso de datos, los view objects tambin tienen se pueden relacionar, por medio de un componente llamado view link. Su utilidad?, pues la utilidad es sincronizar datos, imagnese que planeamos construir una consulta, que cada vez que se navegue por un dato del movimiento, automticamente se muestre los detalles del movimiento elegido. Para lograr eso, es probable que usted podra planear en programar para esa sincronizacin. Bien, el framework evita eso, permitiendo que definiendo esta relacin, automticamente los datos de dos vistas se sincronizan. Es decir si el usuario se ubica en el movimiento 545, entonces los detalles se filtran para mostrar los detalles correspondientes al movimiento 545. Bien para crear la relacin, simplemente repita el paso 1 y elija la opcin View link.

    13. Cambie, el paquete destino por com.ventas.model.queries y defina un nombre para este tipo de componente por : MovimientoDetalleVL.

    image

    image

    image

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    14. La siguiente pantalla permite definir la vista involucradas en el view Link. En este caso, definimos el atributo de la vista origen MovimientoVO.MovimientoId (Ser el padre) y la vista destino (DetalleVO.MovimientoId). Pulse Add para agregar la relacin.

    Not que esta relacin es muy similar a la de una asociacin de entidades, pero no se confunda. Mientras la asociacin entre entidades sirva para un acceso de datos entre entidades, por ejemplo se podra personalizar el cdigo para que desde el movimiento se acceda a todos sus detalles para por ejemplo, calcular el total de detalles . Mientras que cuando usamos los viewLink lo que logramos es sincronizar datos sin necesidad de personalizar cdigo alguno y que es muy til para mostrar resultados anidados en la pantalla.

    15. Pulse Next y luego Finish para culminar la creacin del viewLink. Usted debera tener una imagen como la siguiente :

    16. Ahora, procederemos a crear le mdulo de aplicaciones. Repita los pasos 1 y 2 para mostrar la galera de componentes y elegir la opcin Application Module.

    image

    image

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    17. Cambie le nombre del paquete por com.ventas.model.applications y el nombre del applications module por VentasAM. Pulse Next.

    18. En la siguiente pantalla se define las vistas que sern expuestas por la aplicacin que vamos a desarrollar.Este punto es importante destacarlo para comprender este tipo de componentes. Cuando construimos un modulo de aplicacin tenemos que definir que vistas (View Object) sern usadas y expuestas hacia la capa WEB. Como explicamos en la parte introductoria, el mdulo de aplicaciones concentrar la lgica de negocio de la aplicacin y obviamente para poder implementar estas reglas, es necesario acceder a datos. Justamente estos datos son provedos por los view objects, y este paso, es para que el modo de aplicacin vea las vistas que necesita.

    Si hacemos un analoga, es como si usted construyera un store procedures (Application Module) y declarar el uso de cursores creados previamente.

    19. En este caso, exponemos las vistas Cliente, Producto y Detalle. Para eso seleccinelas y use los botones de desplazamiento para agregarlas.

    20. Bien la vista que nos faltara aadir sera la de movimiento. En este punto es importante recordar lo que hicimos en el paso 12 para crear el ViewLink entre Movimiento y Detalle. Note que se creo una relacin entre las vistas para lograr sincronizar los datos. Bien, esta jerarquia

    image

    image

    image

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    tiene que ser expuesta para poder ser utilizada posteriormente. Entonces, para esto primero elija la vista movimiento y desplazela a la izquierda.

    21. Ahora lo que hay que hacer es pasar la vista de detalle hacia la derecho, para eso en la region de la izquerda seleccione la vista detalle y en la regin de la derecha seleccione la vista MovimientoVO, agregada previamente, luego pulse el boton de desplazamiento. Usted debera tener una imagen similar a lo mostrado a continuacin. Pulse Finish para culminar la construccin del mdulo de aplicaciones.

    22. Bien todo lo construido debera tener la siguiente imagen.

    23. Ok, para culminar la parte de mapeo vamos a usar una de las funcionalidades que ofrece el framework que es la capacidad de visualizar los datos una vez construido la capa de modelo. Que significa eso, pues que usted puede inspeccionar datos, probar mtodos y actualizar informacin directamente desde el modelo, sin necesidad de crear una interfaz de usuario como una pgina jsf. Esto es muy til, porque ayuda a hacer debug y probar la capa de modelo antes de iniciar el desarrollo del la capa WEB, y de esa manera miminizar los errores en la aplicacin.

    24. Bien, para lograr esto simplemente haga clic derecho sobre el mdulo de aplicaciones y eliga la opcin Run.

    image

    image

    image

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    Posted by Plinio Arbizu at 18:37

    Labels: 1.Curso ADF 11g

    25. Haga doble clic sobre la vista ClienteVO y use las flechas de desplazamiento para navegar entre los datos de esa vista.

    26. Finalmente si hace doble clic sobre el viewLink MovimientoDetalleVL1, vera la relacin entre la vista movimiento y detalle. Si usted se desplaza entre los datos del movimiento, notar que automaticamente se refrescan los datos del detalle. Que es el efecto que queriamos lograr.

    27. Si lleg hasta aqu, felicitaciones ya su aplicacin va tomando forma y estamos seguros que esta listo para las siguientes entradas del curso. Si no lleg y tiene dudas, puede descargar el cdigo del proyecto para que revise la solucin.

    CODIGO FUENTE

    image

    image

    image

    Recommend this on Google

    2 comments:

    Radamanthys17 29 May 2012 at 09:12

    Gracias muy buena explicacion.

    Reply

  • Plinio Arbizu: Curso ADF 11g - Parte 2

    Plinio Arbizu_ Curso ADF 11g - Parte 2.html[20/04/2015 08:28:34 p.m.]

    Newer Post Older PostHome

    Subscribe to: Post Comments (Atom)

    No ests conectado a una red

    Comprueba que todos los cables de red estn conectados.Comprueba que el modo avin est desactivado.Asegrate de que el interruptor inalmbrico est activado.Ve si puedes conectarte con la banda ancha mvil.Reinicia el enrutador.

    Unknown 3 December 2012 at 06:18

    Gracias!

    Reply

    Travel template. Powered by Blogger.

    Disco localPlinio Arbizu: Curso ADF 11g - Parte 2

    IwLSUyMFBhcnRlJTIwMi5odG1sAA==: form0: search: input0:

    RtbD9BY3JvYmF0V2ViQ2FwVElEMgA=: form0: q: