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
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
http://ip:7001/HRtest/faces/DeptEmpPage
Toad 11, 3 apuntes para programadores
Introducción:
Se comentan tres funcionalidades interesantes del TOAD para programadores
Chequeo del codigo pl-sql según unas normas de buena escritura de código
Formateador de Oracle
Análisis de código ( Code Analisis )
1) PL/SQL Grammar Checking
http://www.thatjeffsmith.com/archive/2011/05/toad-for-oracle-v11-sneak-peek-plsql-grammar-checking/
TOAD 11 analiza el código pl-sql y te advierte de una serie de aspectos a mejorar , todo lo que viola una serie de reglas recomendadas.
Por ejemplo te advierte de todas las variables no utilizadas , aquellas que se definen y no se utilizan con lo cual se pueden eliminar.
Al crear un IF y END IF te indica que es mejor utilizar CASE en vez del complejo IF
Podemos cambiar ese IF/END IF por CASE
CASE debe cumplir alguna condición , si no cumple una condición se produce un ORA-06592
Te avisa cuando una FUNCTION tiene varios RETURNS ( o puntos de finalización de la función )
Etc
2) Formatter Options
Depositar el archivo FmtPlus.opt en esta carpeta para formatear el código plsql
Para formatear el código plsql
Adjunto archivo FmtPlus.opt de un email que se envío en Febrero del 2007
3) Code Analisis
EDISA presenta el modelo Cloud Computing, como una posibilidad de acceso a LIBRA, en el IX congreso de Galicia TIC
El pasado jueves 20 de Octubre tuvo lugar la IX edición del congreso GaliciaTIC, en el que EDISA participa como empresa patrocinadora. Entre las ponencias presentadas, se ha destacado la calidad de la que ha desarrollado Alvaro Gómez Vieites a cargo de EDISA.
En la ponencia se analizaron los principales aspectos relacionados con el modelo cloud computing y con las posibles modalidades; SAAS (Software as a service), PAAS (Platform as a service) e IAAS (Infraestructure as a service).
Se trata de un modelo en el que ya se están empezando a entregar entre el 5% y el 10% de las soluciones de gestión empresarial y que ya se está ofreciendo desde EDISA como una altermativa para los clientes que desean externalizar todo lo que se refiere a las infraestructuras TIC.
Tiene disponible la presentación en https://2026.edisa.com/publicaciones/ficha_73.htm
El software de gestión (ERP-CRM) LIBRA amplía las opciones de integración con la Agencia Tributaria del Gobierno de España
En las últimas versiones de LIBRA se han ido incorporando los modelos más comunes de declaración fiscal que permite integrar la Agencia Tributaria del Gobierno de España.
Desde la versión 5.2.2 LIBRA permite generar los ficheros que deberá integrar en la web oficial de la Agencia Tributaria. Todos los modelos se generan en fichero 'ascii', salvo el modelo 390 que se genera en formato 'xml'.
La funcionalidad actual de LIBRA abarca los siguientes modelos:
- Modelo 110. Retenciones e ingresos a cuenta. Rendimientos del trabajo, de actividades profesionales, de actividades agrícolas y ganaderas y premios. Modelo no vigente para períodos de liquidación posteriores a 1 de enero de 2011. A partir de esta fecha deberá utilizarse el modelo 111.
- Modelo 111. Retenciones e ingresos a cuenta. Rendimientos del trabajo y de actividades económicas, premios y determinadas ganancias patrimoniales e imputaciones de renta.
- Modelo 115. Retenciones e ingresos a cuenta. Rentas o rendimientos procedentes del arrendamiento o subarrendamiento de inmuebles urbanos.
- Modelo 180. Retenciones e ingresos a cuenta. Rendimientos procedentes del arrendamiento de inmuebles urbanos. Resumen anual.
- Modelo 190. Resumen anual de retenciones e ingresos a cuenta. Rendimientos del trabajo de determinadas actividades económicas, premios y determinadas imputaciones de renta.
- Modelo 296. Resumen anual de retenciones e ingresos a cuenta para No Residentes.
- Modelo 300. Régimen General. Declaración Trimestral. Modelo no vigente para períodos de liquidación posteriores a 1 de enero de 2009. A partir de esta fecha deberá utilizarse el modelo 303.
- Modelo 303. Impuesto sobre el valor añadido para empresarios individuales y profesionales.
- Modelo 320. Impuesto sobre el valor añadido para grandes empresas.
- Modelo 322. Impuesto sobre el valor añadido. Grupo de entidades.
- Modelo 332. Impuesto sobre el valor añadido. Exportadores y otros operadores económicos.
- Modelo 340. Declaración informática de operaciones en libros registro.
- Modelo 347. Declaración anual operaciones con terceras personas.
- Modelo 349. Declaración recapitulativa de operaciones intracomunitarias.
- Modelo 390. Declaración resumen anual I.V.A.
- Modelo 415 . Declaración anual de operaciones con terceras personas.
Disponible entorno 6.0.7
Ya se encuentra disponible la actualización de entorno 6.0.7, con mejoras que afectan a todos los programas de LIBRA , novedades en la gestión de Mensajes, Alertas, Generador de Informes y se incorporan nuevas herramientas útiles para desarrolladores.
Novedades
- Mejora en guardado de valores a aplicar en filtros:
- Permite guardar (en caso de que el usuario esté autorizado) los filtros aplicados en una consulta de forma pública, de manera que cualquier otro usuario puede recuperarlos.
- Se puede configurar un programa en el menú de manera que al ejecutarse aplique de forma automática una configuración de filtros guardad.
- Mensajes:
- Posibilidad de configurar Código PL/SQL según el botón que pulse el usuario en un mensaje, esto permite simplificar algunas personalizaciones muy avanzadas.
- Alertas:
- Posibilidad de envío de correos en formato HTML.
- Se integran con el generador de informes, de manera que al ser enviada una alerta por correo electrónico pueda llevar las hojas de cálculo realizadas por el generador de informes.
- Se añade control total de la alerta desde su Código PL/SQL, cambiar texto de la alerta, cambiar destinatarios, ....
- Integración con PARSER, de manera de qué en el texto del correo electrónico se pueden introducir etiquetas que serán reemplazadas al ejecutarse la alerta. Consultar guía de desarrollo para más información sobre el Parser.
- Parámetros a las alertas que pueden ser pasados cuando se invoca una alerta desde un Código PL/SQL.
- Generador de Informes:
- En la pantalla de filtros se pueden guardar los valores utilizados para poder ser recuperados en próximas ejecuciones del informe.
- Mejora de las consultas con campos calculados incluidos en los mantenimientos de tablas y tablas personalizadas del generador de informes, en esta versión se pueden realizar agrupaciones en consultas que incorporen estos campos.
- Se pueden preconfigurar al diseñar un informe los valores iniciales de los filtros sin necesidad de usar Código PL/SQL de Inicialización (única posibilidad hasta esta versión).
- Al diseñar el informe se puede indicar que al consultar por pantalla no se ajuste al ancho de la pantalla, de esta forma si hay muchas columnas, se añade un scroll horizontal en vez de hacer más pequeños los campos.
- Varias
- Integración con Twitter.
- Se puede configurar que los correos electrónicos se gestionen a través de Alertas, de manera que el usuario no tenga retardos debidos a la comunicación con el servidor SMTP.
- Se mejora el funcionamiento del editor de campos, (botón “Editar Campo” de la botonera horizontal), si el campo tiene un tamaño máximo igual o superior a 2000 caracteres el editor se abre maximizado.
- Específicas para versiones de Forms 10g y Forms 11g:
- Se permite la visualización de archivos, al igual que en cliente servidor si se hace doble click sobre un campo de tipo "Archivo", se descarga al equipo del cliente a una carpeta temporal y se visualiza, una vez el usuario cierra el archivo se borra.
- Utilidades para desarrolladores:
- Generación de Hojas de Cálculo: Se incorpora la posibilidad de modificar fuentes y estilos de las hojas de cálculo generadas desde Libra, para más información consultar la documentación de desarrollo en el apartado “Generación de hojas de cálculo desde Forms”
- Correos electrónicos: Se permiten adjuntar archivos generados con el generador de informes, para más información consultar la documentación de desarrollo en el apartado “Gestión de correos electrónicos / Adjuntar archivos”
- Gestión de archivos: Se permiten comprimir y descomprimir archivos desde Código PL/SQL, para más información consultar la documentación de desarrollo en los apartados “Comprimir un archivo en la base de datos” y “Descomprimir un archivo en la base de datos”
Documentación
- Guía de desarrollo actualizada a esta versión.
- Manual del generador de informes actualizado a esta versión.
- Notas detalladas de las novedades de esta versión.
Actualización de los módulos CRM y BPM de Libra
La principal novedad de esta actualización es la posibilidad de configurar las columnas que se visualizan en el gestor de procesos, pudiendo ser adaptada de forma muy sencilla a las necesidades de cada empresa.
NOTA: Esta actualización únicamente se puede instalar una vez actualizado al entorno 6.0.7 de Libra. Para ver las novedades que incorpora este entorno le recomendamos la siguiente entrada del blog: Disponible entorno 6.0.7
Novedades
- Expedientes:
- Más campos de uso libre.
- Nuevo concepto “Prioridad”.
- Gestión de Procesos:
- Posibilidad de parametrizar que determinadas tareas se puedan ejecutar o finalizar sin necesidad de haber sido asumidas previamente.
- En el menú de procesos, al hacer doble click en las observaciones se abre una ventana para visualizarlas en una ventana más grande, también se añade al botón contextual del botón derecho en las observaciones la opción "Editar" para poder modificar las observaciones de forma rápida (en caso de que el usuario tenga permisos de modificación).
- Se permite definir qué campos que serán visualizados, el tamaño y la etiqueta que tendrán en la pantalla del gestor de procesos.
- Se contempla la parametrización de Usuario Derivado.
- Utilidad para exportar / importar procesos.
- Registro las operaciones que realiza el usuario sobre una tarea desde el gestor de procesos, ejecutar, liberar, …
- Equipos de “Gestión de Usuarios”
- Vista 360º:
- En la búsqueda se sustituyen espacios por %, igual que hacen las búsquedas contextuales por lista de valores.
- Se mejora el funcionamiento de de los números de lote en la línea de los documentos.
- Integración con factura electrónica, de forma que se pueden visualizar los documentos firmados de forma más ágil.
Documentación
Disponible entorno 6.0.7
Ya se encuentra disponible la actualización de entorno 6.0.7, con mejoras que afectan a todos los programas de Libra ERP , novedades en la gestión de Mensajes, Alertas, Generador de Informes y se incorporan nuevas herramientas útiles para desarrolladores.
Novedades
- Mejora en guardado de valores a aplicar en filtros:
- Permite guardar (en caso de que el usuario esté autorizado) los filtros aplicados en una consulta de forma pública, de manera que cualquier otro usuario puede recuperarlos.
- Se puede configurar un programa en el menú de manera que al ejecutarse aplique de forma automática una configuración de filtros guardad.
- Mensajes:
- Posibilidad de configurar Código PL/SQL según el botón que pulse el usuario en un mensaje, esto permite simplificar algunas personalizaciones muy avanzadas.
- Alertas:
- Posibilidad de envío de correos en formato HTML.
- Se integran con el generador de informes, de manera que al ser enviada una alerta por correo electrónico pueda llevar las hojas de cálculo realizadas por el generador de informes.
- Se añade control total de la alerta desde su Código PL/SQL, cambiar texto de la alerta, cambiar destinatarios, ....
- Integración con PARSER, de manera de qué en el texto del correo electrónico se pueden introducir etiquetas que serán reemplazadas al ejecutarse la alerta. Consultar guía de desarrollo para más información sobre el Parser.
- Parámetros a las alertas que pueden ser pasados cuando se invoca una alerta desde un Código PL/SQL.
- Generador de Informes:
- En la pantalla de filtros se pueden guardar los valores utilizados para poder ser recuperados en próximas ejecuciones del informe.
- Mejora de las consultas con campos calculados incluidos en los mantenimientos de tablas y tablas personalizadas del generador de informes, en esta versión se pueden realizar agrupaciones en consultas que incorporen estos campos.
- Se pueden preconfigurar al diseñar un informe los valores iniciales de los filtros sin necesidad de usar Código PL/SQL de Inicialización (única posibilidad hasta esta versión).
- Al diseñar el informe se puede indicar que al consultar por pantalla no se ajuste al ancho de la pantalla, de esta forma si hay muchas columnas, se añade un scroll horizontal en vez de hacer más pequeños los campos.
- Varias
- Integración con Twitter.
- Se puede configurar que los correos electrónicos se gestionen a través de Alertas, de manera que el usuario no tenga retardos debidos a la comunicación con el servidor SMTP.
- Se mejora el funcionamiento del editor de campos, (botón “Editar Campo” de la botonera horizontal), si el campo tiene un tamaño máximo igual o superior a 2000 caracteres el editor se abre maximizado.
- Específicas para versiones de Forms 10g y Forms 11g:
- Se permite la visualización de archivos, al igual que en cliente servidor si se hace doble click sobre un campo de tipo "Archivo", se descarga al equipo del cliente a una carpeta temporal y se visualiza, una vez el usuario cierra el archivo se borra.
- Utilidades para desarrolladores:
- Generación de Hojas de Cálculo: Se incorpora la posibilidad de modificar fuentes y estilos de las hojas de cálculo generadas desde Libra, para más información consultar la documentación de desarrollo en el apartado “Generación de hojas de cálculo desde Forms”
- Correos electrónicos: Se permiten adjuntar archivos generados con el generador de informes, para más información consultar la documentación de desarrollo en el apartado “Gestión de correos electrónicos / Adjuntar archivos”
- Gestión de archivos: Se permiten comprimir y descomprimir archivos desde Código PL/SQL, para más información consultar la documentación de desarrollo en los apartados “Comprimir un archivo en la base de datos” y “Descomprimir un archivo en la base de datos”
Documentación
- Guía de desarrollo actualizada a esta versión.
- Manual del generador de informes actualizado a esta versión.
- Notas detalladas de las novedades de esta versión.
EDISA estará presente en el IX congreso GALICIA TIC
El próximo 20 de octubre en el auditorio del Centro Social Nova Caixa Galicia (NCG) de Vigo, celebraremos la IX edición de Galiciatic, que desde el año 2003 constituye una cita anual ineludible en Galicia con el entorno profesional y empresarial del sector TIC y de la que EDISA ha sido empresa patrocinadora desde su inicio.
En esta ocasión seleccionamos tecnologías que irrumpen con fuerza en el actual escenario socio-económico, como “Cloud Computing”, las “redes sociales” o “RFID” las cuales constituyen una muestra representativa y de creciente utilización.
La jornada que presentamos nos dará importantes claves para la gestión del rendimiento corporativo, la sostenibilidad y la oportunidad de aplicar estas nuevas tecnologías.
Para inscribirse basta con acceder a la página web www.galiciatic.com en la que podrás registrarte indicando que es EDISA quien te facilita la entrada al congreso.














