Taller de ADF Framework , Jdeveloper y Weblogic Primeros pasos

Introducción:

Oracle Fusion Middleware es la consolidación de un gran número de productos que se ejecutan sobre el servidor de Aplicaciones WebLogic.

http://www.oracle.com/technetwork/middleware/fusion-middleware/overview/index.html

Todos los productos son J2EE y Jdeveloper es la herramienta de desarrollo de Oracle Fusion Midleware.

El framework recomendado por Oracle es el ADF Framework

Con Jdeveloper y ADF Framework podemos crear aplicaciones java:

  • Aplicaciones de escritorio
  • Aplicaciones Web con ADF

A partir de ahora hablaremos solo de aplicaciones Web y en concreto de aplicaciones web con ADF Framework

  • ADF BC  (Bussines Components)
  • ADF FACES ( Componentes JSF para utilizarlos en las páginas ) (JSF=Java Server Faces)

Las aplicaciones Web son aplicaciones que corren en un browser , en el browser  se ejecuta Html y JavaScript, no requieren en el cliente de ningún runtime ( simplemente un browser )

En java en web primero aparecieron los servlets , después las paginas JSP , después las paginas JSF ( java server faces ) y ahora Oracle ha evolucionado las JSF a ADF Faces.

Oracle está migrando todas sus aplicaciones a ADF Faces en web. 

Jdeveloper

Página de Jdeveloper    http://www.oracle.com/technetwork/developer-tools/jdev/overview/index.html

La versión actual de Jdeveloper es la 11.1.2.1.0 , incluye un servidor de aplicaciones “Weblogic” integrado para desarrollar ( versión de Weblogic 10.3.5.0 )

Con ese servidor de WebLogic podemos crear un WebLogic StandAlone independiente para desplegar nuestras aplicaciones sin tener arrancado Jdeveloper.

También es posible arrancar el IntegratedWebLogic desde fuera de jdeveloper ejecutando el comando: C:\Users\xavieredisa\AppData\Roaming\JDeveloper\system11.1.2.1.38.60.81\DefaultDomain\bin\startWebLogic.cmd

El pc debe de tener como mínimo 2G de RAM

En cuanto al monitor cuanto mas grande mejor ( incluso 22’’ )

Instalación de Jdeveloper:

Ir a la página de Oracle , descargar Jdeveloper

http://www.oracle.com/technetwork/developer-tools/jdev/downloads/index.html?ssSourceSiteId=ocomen

La instalación se instala por defecto en la carpeta C:\Oracle\Middleware

La instalación es simple como cualquier instalación en Windows

Introducción a ADF Framework

ADF es un framework de desarrollo java (propietario de Oracle) para realizar aplicaciones Web de una forma rápida y simple.

ADF se ejecuta (sin coste adicional) sobre WebLogic Standard o WebLogic Enterprise y no sobre sobre WebLogic Basic

Las aplicaciones web con ADF Framework implementan el modelo MVC Modelo Vista Controlador

La aplicación consta de dos Proyectos

1)      El Modelo

Para crear el modelo se utilizan los ADF BC ( Bussines Components ) a través de asistentes y se definen una serie de clases como:

  • Entidades -> Clases Java que representan una tabla
  • ViewObjects -> Clases Java que representan una vista o Query ( En forms serían los bloques )
  • ViewLinks -> Relaciones ( En forms serían las relaciones )
  • etc

En el modelo se definen todas las tablas , vistas , relaciones , listas de valores y atributos de campos , validaciones y toda la lógica del negocio en forma declarativa ( o sea sin programar ) informando propiedades.  También podemos validar contra métodos java.

2)      La Vista-Controlador

En el controlador definimos el flujo de las paginas mediante Task Flows

En la vista diseñamos las páginas que se mostraran en el browser ,  existe el área de diseño , la paleta de componentes y la página de propiedades ,  como en forms.

ADF está pensado para definir tanto el modelo como la vista controlador de forma declarativa , informando propiedades , arrastrando objetos.

Podemos crear una aplicación sin rascar ni una sola línea de código.

Primero se crea el modelo con ADB BC , una vez el modelo es consistente pasamos a crear la Vista-Controlador con ADF-TaskFlows y ADF-Faces.

Lo ideal es partir del modelo de datos definitivo (ADF BC) para empezar a definir la VISTA o las paginas

La mejor manera de aprender a utilizar el ADF es realizando los tutoriales que hay en la web de Oracle , es un tema muy complejo y abstracto para aprender solamente leyendo un libro o un pdf , al realizar las practicas usamos los componentes y entonces entendemos el funcionamiento del componente y cómo se comporta en modo de ejecución.

Primer Programa con ADF Framework

Tutoriales   http://download.oracle.com/docs/cd/E18941_01/tutorials/toc.htm

Primer programa   Developing Rich Web Applications with Oracle ADF

Build an end-to-end rich Internet application that interacts with a database using Oracle ADF.

Este tutorial muestra cómo crear una aplicacion web con ADF utilizando el MVC , se crean los Bussines Objects , Se crean Task flows , Se crean 2 Páginas web en las cuales se colocan componentes y se arrastran los componentes del modelo de datos.

En este tutorial no se rasca ni una sola línea de código.

El tutorial marca 2h aunque puedes estar tranquilamente 4h.

Despliegue ( deploy ) de la aplicación en un servidor WebLogic

Jdeveloper incorpora un WebLogic completo

Dentro de jdeveloper usa IntegratedWebLogicServer que es un weblogic que funciona mientras tienes el IDE de jdeveloper abierto

Para poder probar la aplicación en un servidor WebLogic necesitamos instalar o configurar un WebLogic para ejecutar aplicaciones ADF.

Podemos descargar de Oracle el software para instalar WebLogic , instalar WebLogic en una máquina y después instalar las librerías de ADF

Configuring WebLogic Server Domain/Machine/Server instances with the JDeveloper 11g ADF installer

http://chrismuir.sys-con.com/node/952411/mobile

http://fetishcode.wordpress.com/2010/10/17/instalar-weblogic-10-3-3-0-y-desplegar-en-el-una-aplicacion-adf-11g/

Podemos utilizar el WebLogic que viene con Jdeveloper y crear un StandaloneWebLogicServer.

FAQ #1 – How to configue the standalone WebLogic server for deploying ADF applications from JDeveloper 11g R1

http://jdeveloperfaq.blogspot.com/2009/12/faq-1-how-to-configue-stand-alone.html

FAQ #3 – How to deploy an ADF application on a standalone WebLogic server directly from JDeveloper

http://jdeveloperfaq.blogspot.com/2009/12/faq-3-how-to-deploy-adf-application-on.html

En cuanto al archivo startWebLogic.cmd

set ADF_JAVA_OPTIONS=-Djrf.version=11.1.1 -Djrockit.optfile=%MIDDLEWARE_HOME%\oracle_common\modules\oracle.jrf_11.1.1\jrocket_optfile.txt

set JAVA_OPTIONS=%SAVE_JAVA_OPTIONS% %ADF_JAVA_OPTIONS%

@REM         set JAVA_OPTIONS=%JAVA_OPTIONS% -Dlaunch.main.class=%SERVER_CLASS% -Dlaunch.class.path=»%CLASSPATH%» -Dlaunch.complete=weblogic.store.internal.LockManagerImpl -cp %WL_HOME%\server\lib\pcl2.jar

Y

@REM set CLASSPATH=%SAVE_CLASSPATH%

set CLASSPATH=%SAVE_CLASSPATH%;%MIDDLEWARE_HOME%\oracle_common\modules\oracle.jrf_11.1.1\jrf.jar

Web Context Name ->Nombre de la aplicación:

http://<hostname>:7001/<web_context_name>/faces/<PageName>

Ejemplo:

http://127.0.0.1:7001/HRtest/faces/DeptEmpPage

Métodos para desplegar aplicaciones

http://onlineappsdba.com/index.php/2008/08/12/deploy-application-on-oracle-weblogic-server/

WebLogic

Una vez está instalado el WebLogic

Arrancamos weblogic

%MIDDLEWARE_HOME%\user_projects\domains\%NOMBRE_DOMINIO%\bin\startWebLogic.cmd

C:\Oracle\Middleware\user_projects\domains\base_domain\bin\startWebLogic.cmd

Accedemos a el servidor integrado “IntegratedWebLogicServer”

http://localhost:7101/console

Accedemos al StandAloneWebLogicServer

http://localhost:7001/console

Configuración del Origen de Datos en WebLogic

En Jdeveloper , Application , Application Properties , desmarcar “Auto Generate and Synchronize WebLogic JDBC During Deployment”

De este modo no se crea la conexión a nivel de aplicación al desplegar la aplicación y utiliza los datos del origen de datos definido a nivel de WebLogic

Demo de todos los controles de ADF

ATENCIÓN esta demo a veces no funciona.

http://jdevadf.oracle.com/adf-richclient-demo/faces/index.jspx?gallery=true

Prueba del tutorial realizado

http://ip:7001/HRtest/faces/DeptEmpPage

http://ip:7001/console[:]

Start typing and press Enter to search