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
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”
Accedemos al StandAloneWebLogicServer
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