Post on 03-Feb-2016
rickymax.wordpress.com
Desarrollo de Aplicaciones J2EE con Oracle ADF
Ricardo RuanoConsultor ADFEcuador 2013
Agenda
Quienes Somos?,Experiencia, Clientes actuales Qué es Oracle ADF? Arquitectura ADF: patrón y posibilidades tecnológicas
Modelo Vista Controlador
Como funciona ADF? Manipulación de View Objects Validación de Datos DML Methods
• ADF Controller• ADF Faces• Esto significa la muerte de PL/SQL?
Oracle ADF?
Aplicaciones J2EE Clásicas
•Conjunto de especificaciones o APIS complejas y tediosas.•Esfuerzo muy costoso para obtener código reutilizable basado en capas y componentes.•Riesgo de continuidad siempre presente
ADF:•Herramienta de productividad efectiva y desarrollo ágil•Guerra a la complejidad del manejo de las APIs de J2EE•Gran poder y portabilidad•Elimina tareas repetitivas•Implementa patrones de diseño de fácil uso•Continuidad asegurada en la inversión
Metaframework
Oracle ADF?
• Entorno de Desarrollo Visual y programación declarativa
• Plataforma Independiente, indiferente del contenedor J2EE
• Variedad de Opciones tecnológicas
Oracle• ADF
• 11g
Microsft• .Net
• 4.0
Oracle ADF Architecture
Selección Ideal
DataControl
Entity Objects
View Objects
Database
SQL Queries
DML Insert/Update/Delete
Validation
Security
Code re-use
User Inteface
R/W
R/W
R/O
Funcionamiento de ADF
Booking
Event
Aplication Module
EventBookingsView1
ResourceTypeView1
BooKingsView1
Modelo
Componentes de Negocio ADF mediante wizards List-Of-Values, basada en View Objects (persistentes o
no persistentes) Calculated Atributos Calculados Reglas de Validación dependientes Modelo Visual de Pruebas integrado
Marco de trabajo definidoCódigo limpio y componentes reutilizables
Vista-Controlador
Flujos de Tareas ADF Fragmentos de Pagina y Regiones ADF Faces Rich Client ADF Security Component Gráficos avanzados
Resultado esperado
Publicando en el Modelo de Servicios
Cada una de las operaciones que se definan en las entidades y view objects se pueden exponer en el modelo de servicios a traves del Aplication Module
The AppModuleImpl
Manipulando View Objects
Tiempo de Diseño
Se puede modificar el query SQL haciendo uso del Modo Experto
Bind VariablesOracle Named
Oracle Positional
JDBC Positional
Set Bindsvia Custom Code &
exposing Model Services
Manipulación en Tiempode Ejecución
Manipulando View Objects
Validación de Datos– Declarativa
2 Enfoques
•A nivel de la entidad
•A nivel del atributo de la la entidad
Validación de Datos – Código
2 Enfoques
•A nivel de la entidad
•A nivel del atributo de la la entidad
protected void doDML(int operation, TransactionEvent e) {
if (operation == DML_INSERT) { /* write PRE-INSERT trigger-like code here */ super.doDML(operation, e); /* Don't call the super and do something else to write ON-INSERT trigger-like code */ /* write POST-INSERT trigger-like code here */ } else if (operation == DML_UPDATE) { /* write PRE-UPDATE trigger-like code here */ super.doDML(operation, e); /* Don't call the super and do something else to write ON-UPDATE trigger-like code here */ /* write POST-UPDATE trigger-like code here */ } else if (operation == DML_DELETE) { /* write PRE-DELETE trigger-like code here */ super.doDML(operation, e); /* Don't call the super and do something else to write ON-DELETE trigger-like code here */ /* write POST-DELETE trigger-like code here */ }
}
DML Methods
Si!, son equivalentes a los Triggers transaccionales de Core Forms.
The EntityImpl
ADF Controller
ADF Faces
ADF Faces
Esto es la muerte Database PL/SQL?
Para invocar los Stored Procedures y Funciones de la BD
Una de las manerasCallable statementJPublisherExponer como un web service
No realmente, ahora simplementeSe deben usar con otro enfoque!
PLSQL
Funcionamiento
Resumen
JDeveloper 11g – Ciclo de Desarrollo Completo Desarrollo rapido y confiable mediante wizards Desarrollo Java (Clases java en la capa de Modelo,
Managed Beans en la capa View-Controller) ADF Business Components JheadStart – Plataforma
recomendado para convertir Oracle Forms Aplicaciones de aspecto amigable y facil uso mediante
ADF Faces Rich Client
Demo
El siguiente demo permite visualizar la potencia de ADF a travéz de 20 minutos de desarrollo para obtener una aplicacion Rich fusion sobre ADF y desplegada en weblogic.
Preguntas?
Muchas Gracias por su atención
Contactos: Ricardo RuanoCelular: (593)0989961051Skype: rickymax01Email: ricardo.ruano@outlook.comBlog: rickymax.wordpress.com