SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
ADF 12c como Backend
REST API
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
¿Qué es Oracle ADF?
● Framework de desarrollo
● Modelo-Vista-Controlador
● Desarrollado sobre Java EE
● 11g → JavaEE 5
● 12c → JavaEE 6
● Visual y Declarativo
● Interfaz de usuario moderna
● Flujos de navegación avanzados (Task Flows)
● Seguridad integrada
● IDEs: JDeveloper and Eclipse(OEPE)*
*Funcionalidades limitadas
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
¿Qué es Oracle ADF Essentials?
● Subconjunto de las tecnologías clave de Oracle ADF:
● ADF Faces
● ADF DvT
● ADF Controller
● ADF Binding
● ADF Bussines Components
● Gratis para desarrollar, Gratis para desplegar
● JDeveloper/Eclipse*
● MySQL*
● Glassfish
*Funcionalidades limitadas
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
ADF 12.2.1.x
● Versión 12.2.1.0 -> liberada en Octubre de 2015
● Versión 12.2.1.1 -> liberada en Junio de 2016
● Actualización a Java SE 8
● Actualización a Java EE 6
● Nuevos componentes para ADF Faces y ADF DvT
● Nuevos componentes y plantilla para diseño adaptable
● Soporta CSS3
● Soporte para últimas versiones de navegadores
● Soporta la creación de APIs tipo Rest a partir del modelo de negocio
● Soporte para Git
● Mejor soporte para Maven
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
REST
REREpresentational SState TTransfer
file.png
Sin Estado
http://servidor/img/file.png
POST
GET
C
R
U
D
HTTP
URL
XML
... Estándar
...
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
JSON
JJavaSScript OObject NNotation
{
"RegionsComplete" : {
"discrColumnType" : false,
"attributes" : [ {
"name" : "RegionId",
"type" : "integer",
}, {
"name" : "RegionName",
"type" : "string",
} ]
}
}
<xml>
<RegionsComplete>
<discrColumnType>false</discrColumnType>
<attributes>
<attribute>
<name>RegionId</name>
<type>integer</type>
</attribute>
<attribute>
<name>RegionName</name>
<type>string</type>
</attribute>
</attributes>
</RegionsComplete>
Estándar
AZ...
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
HATEOAS
HHypermedia AAs TThe EEngine OOf AApplication SState
● Links en las respuestas
● Cliente puede navegar
dinámicamente
● Dos estilos:
– Weblinking
– HAL
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
REST API
RAML
Apiary
HTTP
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
REST API – Guía de diseño
● Identificar los recursos
● Transformar operaciones a métodos HTTP
● Seguir patrón de nombres para los recursos
– Sustantivos
– Plural para las colecciones
– Usar – Evitar _
– No exceder 200 chars
● Usar Accept y Content-Type
● Usar HTTP Caché
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
REST API – Guía de diseño
● Usar Accept-Language para multilenguaje
● Fechas y horas -> Usar ISO8601
● Respuesta parcial
● Actualización parcial
● Consistencia en datos
● Retornar recursos modificados
● Paginación en colecciones
● Búsqueda y ordenamiento
● Versionamiento
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
REST API – Versionamiento
✔ Siempre
✔ Permite nuevas versiones
✔ Compatibilidad hacia atrás
por un tiempo
Tres técnicas:
1) Num. Versión en URL
2) HTTP Custom-Header
3) HTTP Accept
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
ADF 12c – ADF BC RESTful Web Services
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
ADF 12c – ADF BC RESTful Web Services
● latest -> Se refiere a la versión más actual
● describe -> Para obtener información de los recursos
– Response Content-Type: application/vnd.oracle.adf.description+json
● onlyData=true -> Retorna solo datos, sin enlaces
● totalResults=true -> Retorna también la cantidad de registros
● No usar PUT, usar PATCH
● POST/PATCH Content-Type: application/vnd.oracle.adf.resourceitem+json
● Métodos personalizados
– Content-Type: application/vnd.oracle.adf.action+json
● Sólo ViewObjects creadas de forma declarativa ofrecen opciones avanzadas
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
Demo
1) Crear REST API para regiones y países del esquema HR
2) Crear una nueva versión de la REST API
3) Respuesta parcial: fields=att1,att2...
4) CRUD
5) Métodos personalizados
6) Paginación: limit, offset, count, hasMore
7) Filtros:
1) finder=PrimaryKey;Id=X,Id2=Y
2) q=Att=<>...
8) Ordenamiento: Att:asc/desc,Att2:asc/desc
ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1
Recursos en línea
● acelopez.com - Blog acerca de Java y ADF
● Código fuente de ADF – Oracle Support
● ADF Architecture TV
● Grupo de metodología empresarial de ADF (ADF EMG)
● Comunidad ADF en Google+
● OTN Forums – JDeveloper y ADF
● Oracle ADF Architecture Square
● Oracle ADF Code Corner
● Íconos: Benjamin STAWARZ (descargados desde iconfinder.com)

Más contenido relacionado

Destacado

Introduction to Oracle Clusterware 12c
Introduction to Oracle Clusterware 12cIntroduction to Oracle Clusterware 12c
Introduction to Oracle Clusterware 12cGuatemala User Group
 
How to Upgrade Hundreds or Thousands of Databases
How to Upgrade Hundreds or Thousands of DatabasesHow to Upgrade Hundreds or Thousands of Databases
How to Upgrade Hundreds or Thousands of DatabasesGuatemala User Group
 
Upgrade/Migrate to Oracle 12c: Live and Uncensored!
Upgrade/Migrate to Oracle 12c: Live and Uncensored!Upgrade/Migrate to Oracle 12c: Live and Uncensored!
Upgrade/Migrate to Oracle 12c: Live and Uncensored!Guatemala User Group
 
Improving the Performance of PL/SQL function calls from SQL
Improving the Performance of PL/SQL function calls from SQLImproving the Performance of PL/SQL function calls from SQL
Improving the Performance of PL/SQL function calls from SQLGuatemala User Group
 
It's raining data! Oracle databases in the cloud
It's raining data! Oracle databases in the cloudIt's raining data! Oracle databases in the cloud
It's raining data! Oracle databases in the cloudGuatemala User Group
 
How Oracle Single/Multitenant will change a DBA's life
How Oracle Single/Multitenant will change a DBA's lifeHow Oracle Single/Multitenant will change a DBA's life
How Oracle Single/Multitenant will change a DBA's lifeGuatemala User Group
 
SOA y Microservices Diferencias y Aplicaciones
SOA y Microservices Diferencias y AplicacionesSOA y Microservices Diferencias y Aplicaciones
SOA y Microservices Diferencias y AplicacionesGuatemala User Group
 
The best Oracle Database 12c Tuning Features for Developers
The best Oracle Database 12c Tuning Features for DevelopersThe best Oracle Database 12c Tuning Features for Developers
The best Oracle Database 12c Tuning Features for DevelopersGuatemala User Group
 
Deep Dive: More Oracle Data Pump Performance Tips and Tricks
Deep Dive: More Oracle Data Pump Performance Tips and TricksDeep Dive: More Oracle Data Pump Performance Tips and Tricks
Deep Dive: More Oracle Data Pump Performance Tips and TricksGuatemala User Group
 
Soa12c launch 2 features cr
Soa12c launch 2 features crSoa12c launch 2 features cr
Soa12c launch 2 features crVasily Demin
 
Soa12c launch 4 mft cr
Soa12c launch 4 mft crSoa12c launch 4 mft cr
Soa12c launch 4 mft crVasily Demin
 
Soa12c launch 3 bpm 12c cr
Soa12c launch 3 bpm 12c crSoa12c launch 3 bpm 12c cr
Soa12c launch 3 bpm 12c crVasily Demin
 
Large Scale Deployment of SOA-P
Large Scale Deployment of SOA-PLarge Scale Deployment of SOA-P
Large Scale Deployment of SOA-PC2B2 Consulting
 
BPM & Workflow in the New Enterprise Architecture
BPM & Workflow in the New Enterprise ArchitectureBPM & Workflow in the New Enterprise Architecture
BPM & Workflow in the New Enterprise ArchitectureNathaniel Palmer
 
Process-oriented reactive service architecture
Process-oriented reactive service architectureProcess-oriented reactive service architecture
Process-oriented reactive service architecturePeter Hilton
 
Deployment in Oracle SOA Suite and in Oracle BPM Suite
Deployment in Oracle SOA Suite and in Oracle BPM SuiteDeployment in Oracle SOA Suite and in Oracle BPM Suite
Deployment in Oracle SOA Suite and in Oracle BPM SuiteLonneke Dikmans
 
BPM Suite 12c Launch - Focus on Developer Productivity
BPM Suite 12c Launch - Focus on Developer ProductivityBPM Suite 12c Launch - Focus on Developer Productivity
BPM Suite 12c Launch - Focus on Developer ProductivityLucas Jellema
 

Destacado (20)

Integracion Continua en Oracle ADF
Integracion Continua en Oracle ADFIntegracion Continua en Oracle ADF
Integracion Continua en Oracle ADF
 
Introduction to Oracle Clusterware 12c
Introduction to Oracle Clusterware 12cIntroduction to Oracle Clusterware 12c
Introduction to Oracle Clusterware 12c
 
How to Upgrade Hundreds or Thousands of Databases
How to Upgrade Hundreds or Thousands of DatabasesHow to Upgrade Hundreds or Thousands of Databases
How to Upgrade Hundreds or Thousands of Databases
 
Upgrade/Migrate to Oracle 12c: Live and Uncensored!
Upgrade/Migrate to Oracle 12c: Live and Uncensored!Upgrade/Migrate to Oracle 12c: Live and Uncensored!
Upgrade/Migrate to Oracle 12c: Live and Uncensored!
 
Improving the Performance of PL/SQL function calls from SQL
Improving the Performance of PL/SQL function calls from SQLImproving the Performance of PL/SQL function calls from SQL
Improving the Performance of PL/SQL function calls from SQL
 
It's raining data! Oracle databases in the cloud
It's raining data! Oracle databases in the cloudIt's raining data! Oracle databases in the cloud
It's raining data! Oracle databases in the cloud
 
How Oracle Single/Multitenant will change a DBA's life
How Oracle Single/Multitenant will change a DBA's lifeHow Oracle Single/Multitenant will change a DBA's life
How Oracle Single/Multitenant will change a DBA's life
 
SOA y Microservices Diferencias y Aplicaciones
SOA y Microservices Diferencias y AplicacionesSOA y Microservices Diferencias y Aplicaciones
SOA y Microservices Diferencias y Aplicaciones
 
The best Oracle Database 12c Tuning Features for Developers
The best Oracle Database 12c Tuning Features for DevelopersThe best Oracle Database 12c Tuning Features for Developers
The best Oracle Database 12c Tuning Features for Developers
 
Deep Dive: More Oracle Data Pump Performance Tips and Tricks
Deep Dive: More Oracle Data Pump Performance Tips and TricksDeep Dive: More Oracle Data Pump Performance Tips and Tricks
Deep Dive: More Oracle Data Pump Performance Tips and Tricks
 
Integration Cloud Service vs SOA
Integration Cloud Service vs SOAIntegration Cloud Service vs SOA
Integration Cloud Service vs SOA
 
Soa12c launch 2 features cr
Soa12c launch 2 features crSoa12c launch 2 features cr
Soa12c launch 2 features cr
 
Soa12c launch 4 mft cr
Soa12c launch 4 mft crSoa12c launch 4 mft cr
Soa12c launch 4 mft cr
 
Soa12c launch 3 bpm 12c cr
Soa12c launch 3 bpm 12c crSoa12c launch 3 bpm 12c cr
Soa12c launch 3 bpm 12c cr
 
Large Scale Deployment of SOA-P
Large Scale Deployment of SOA-PLarge Scale Deployment of SOA-P
Large Scale Deployment of SOA-P
 
BPM & Workflow in the New Enterprise Architecture
BPM & Workflow in the New Enterprise ArchitectureBPM & Workflow in the New Enterprise Architecture
BPM & Workflow in the New Enterprise Architecture
 
SOA_BPM_12c_launch_event_BPM_track_business_rules_marcelvdglind
SOA_BPM_12c_launch_event_BPM_track_business_rules_marcelvdglindSOA_BPM_12c_launch_event_BPM_track_business_rules_marcelvdglind
SOA_BPM_12c_launch_event_BPM_track_business_rules_marcelvdglind
 
Process-oriented reactive service architecture
Process-oriented reactive service architectureProcess-oriented reactive service architecture
Process-oriented reactive service architecture
 
Deployment in Oracle SOA Suite and in Oracle BPM Suite
Deployment in Oracle SOA Suite and in Oracle BPM SuiteDeployment in Oracle SOA Suite and in Oracle BPM Suite
Deployment in Oracle SOA Suite and in Oracle BPM Suite
 
BPM Suite 12c Launch - Focus on Developer Productivity
BPM Suite 12c Launch - Focus on Developer ProductivityBPM Suite 12c Launch - Focus on Developer Productivity
BPM Suite 12c Launch - Focus on Developer Productivity
 

Similar a ADF 12c como Backend

01 Ext Js Introduccion
01 Ext Js   Introduccion01 Ext Js   Introduccion
01 Ext Js IntroduccionMayer Horna
 
Servidor y cliente iOS en 45min
Servidor y cliente iOS en 45minServidor y cliente iOS en 45min
Servidor y cliente iOS en 45minJavier Moreno
 
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQLDesarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQLJosé Alfredo Ramírez
 
Servicios Rest con Jersey
Servicios Rest con Jersey Servicios Rest con Jersey
Servicios Rest con Jersey Vortexbird
 
Introducción a NodeJS
Introducción a NodeJSIntroducción a NodeJS
Introducción a NodeJSBEEVA_es
 
Servicios Web Rest con Spring MVC
Servicios Web Rest con Spring MVCServicios Web Rest con Spring MVC
Servicios Web Rest con Spring MVCVortexbird
 
Oracle Database 11g vs 12c
Oracle Database 11g vs 12cOracle Database 11g vs 12c
Oracle Database 11g vs 12cDeiby Gómez
 
WORKSHOP I: Introducción a API REST
WORKSHOP I: Introducción a API RESTWORKSHOP I: Introducción a API REST
WORKSHOP I: Introducción a API RESTBEEVA_es
 
Evolucion de big data @ mercadolibre.com
Evolucion de big data @ mercadolibre.comEvolucion de big data @ mercadolibre.com
Evolucion de big data @ mercadolibre.comGabriel Eisbruch
 
PHPAJAX
PHPAJAXPHPAJAX
PHPAJAXrodasc
 
Integración de aplicaciones Java
Integración de aplicaciones JavaIntegración de aplicaciones Java
Integración de aplicaciones JavaIker Canarias
 
Web services restful con JAX-RS
Web services restful con JAX-RSWeb services restful con JAX-RS
Web services restful con JAX-RSVortexbird
 
XQuery y XPath for SQL Server 2012 itpros dc_chapter6
XQuery y XPath for SQL Server 2012 itpros dc_chapter6XQuery y XPath for SQL Server 2012 itpros dc_chapter6
XQuery y XPath for SQL Server 2012 itpros dc_chapter6Julián Castiblanco
 

Similar a ADF 12c como Backend (20)

01 Ext Js Introduccion
01 Ext Js   Introduccion01 Ext Js   Introduccion
01 Ext Js Introduccion
 
Servidor y cliente iOS en 45min
Servidor y cliente iOS en 45minServidor y cliente iOS en 45min
Servidor y cliente iOS en 45min
 
JAVASCRIPT.pptx
JAVASCRIPT.pptxJAVASCRIPT.pptx
JAVASCRIPT.pptx
 
Ajax Huancayo
Ajax HuancayoAjax Huancayo
Ajax Huancayo
 
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQLDesarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
Desarrollo de Aplicaciones con Ruby on Rails y PostgreSQL
 
Servicios Rest con Jersey
Servicios Rest con Jersey Servicios Rest con Jersey
Servicios Rest con Jersey
 
Introducción a NodeJS
Introducción a NodeJSIntroducción a NodeJS
Introducción a NodeJS
 
Oracle xmldb
Oracle xmldbOracle xmldb
Oracle xmldb
 
S4-PD1-2.2 EF
S4-PD1-2.2 EFS4-PD1-2.2 EF
S4-PD1-2.2 EF
 
Servicios Web Rest con Spring MVC
Servicios Web Rest con Spring MVCServicios Web Rest con Spring MVC
Servicios Web Rest con Spring MVC
 
Oracle Database 11g vs 12c
Oracle Database 11g vs 12cOracle Database 11g vs 12c
Oracle Database 11g vs 12c
 
01 Conociendo Ooracle Apex part01
01 Conociendo Ooracle Apex part0101 Conociendo Ooracle Apex part01
01 Conociendo Ooracle Apex part01
 
WORKSHOP I: Introducción a API REST
WORKSHOP I: Introducción a API RESTWORKSHOP I: Introducción a API REST
WORKSHOP I: Introducción a API REST
 
Evolucion de big data @ mercadolibre.com
Evolucion de big data @ mercadolibre.comEvolucion de big data @ mercadolibre.com
Evolucion de big data @ mercadolibre.com
 
PHPAJAX
PHPAJAXPHPAJAX
PHPAJAX
 
Servicios web Extendido_error perl
Servicios web Extendido_error perlServicios web Extendido_error perl
Servicios web Extendido_error perl
 
S4 - EF
S4 - EFS4 - EF
S4 - EF
 
Integración de aplicaciones Java
Integración de aplicaciones JavaIntegración de aplicaciones Java
Integración de aplicaciones Java
 
Web services restful con JAX-RS
Web services restful con JAX-RSWeb services restful con JAX-RS
Web services restful con JAX-RS
 
XQuery y XPath for SQL Server 2012 itpros dc_chapter6
XQuery y XPath for SQL Server 2012 itpros dc_chapter6XQuery y XPath for SQL Server 2012 itpros dc_chapter6
XQuery y XPath for SQL Server 2012 itpros dc_chapter6
 

Más de Guatemala User Group

La transformacion digital en nuestra vida cotidiana. Un vistazo a las APIs
La transformacion digital en nuestra vida cotidiana. Un vistazo a las APIsLa transformacion digital en nuestra vida cotidiana. Un vistazo a las APIs
La transformacion digital en nuestra vida cotidiana. Un vistazo a las APIsGuatemala User Group
 
Cloud Integration for Human Resources: Connect with Your talent in the Cloud
Cloud Integration for Human Resources: Connect with Your talent in the CloudCloud Integration for Human Resources: Connect with Your talent in the Cloud
Cloud Integration for Human Resources: Connect with Your talent in the CloudGuatemala User Group
 
More than 12 More things about Oracle Database 12c
More than 12 More things about Oracle Database 12cMore than 12 More things about Oracle Database 12c
More than 12 More things about Oracle Database 12cGuatemala User Group
 
Oracle Optimizer: 12c New Capabilities
Oracle Optimizer: 12c New CapabilitiesOracle Optimizer: 12c New Capabilities
Oracle Optimizer: 12c New CapabilitiesGuatemala User Group
 
Understanding Query Optimization with ‘regular’ and ‘Exadata’ Oracle
Understanding Query Optimization with ‘regular’ and ‘Exadata’ OracleUnderstanding Query Optimization with ‘regular’ and ‘Exadata’ Oracle
Understanding Query Optimization with ‘regular’ and ‘Exadata’ OracleGuatemala User Group
 
Monitoreo del performance de linux con sar
Monitoreo del performance de linux con sarMonitoreo del performance de linux con sar
Monitoreo del performance de linux con sarGuatemala User Group
 
Diagnóstico de problemas de red para DBAs
Diagnóstico de problemas de red para DBAsDiagnóstico de problemas de red para DBAs
Diagnóstico de problemas de red para DBAsGuatemala User Group
 
Gestión de grandes volúmenes de información
Gestión de grandes volúmenes de informaciónGestión de grandes volúmenes de información
Gestión de grandes volúmenes de informaciónGuatemala User Group
 
Oracle Linux and Oracle Database - A Trusted Combination
Oracle Linux and Oracle Database - A Trusted Combination Oracle Linux and Oracle Database - A Trusted Combination
Oracle Linux and Oracle Database - A Trusted Combination Guatemala User Group
 
Re-­Think Mobile… Beyond Mobile­‐First: Oracle Mobile Strategy and Overview
Re-­Think Mobile… Beyond Mobile­‐First: Oracle Mobile Strategy and OverviewRe-­Think Mobile… Beyond Mobile­‐First: Oracle Mobile Strategy and Overview
Re-­Think Mobile… Beyond Mobile­‐First: Oracle Mobile Strategy and OverviewGuatemala User Group
 
Building Better Mobile Backends with Oracle Mobile Cloud Service
Building Better Mobile Backends with Oracle Mobile Cloud Service	Building Better Mobile Backends with Oracle Mobile Cloud Service
Building Better Mobile Backends with Oracle Mobile Cloud Service Guatemala User Group
 

Más de Guatemala User Group (14)

La transformacion digital en nuestra vida cotidiana. Un vistazo a las APIs
La transformacion digital en nuestra vida cotidiana. Un vistazo a las APIsLa transformacion digital en nuestra vida cotidiana. Un vistazo a las APIs
La transformacion digital en nuestra vida cotidiana. Un vistazo a las APIs
 
Cloud Integration for Human Resources: Connect with Your talent in the Cloud
Cloud Integration for Human Resources: Connect with Your talent in the CloudCloud Integration for Human Resources: Connect with Your talent in the Cloud
Cloud Integration for Human Resources: Connect with Your talent in the Cloud
 
Oracle 12c New Features
Oracle 12c New FeaturesOracle 12c New Features
Oracle 12c New Features
 
More than 12 More things about Oracle Database 12c
More than 12 More things about Oracle Database 12cMore than 12 More things about Oracle Database 12c
More than 12 More things about Oracle Database 12c
 
Oracle Optimizer: 12c New Capabilities
Oracle Optimizer: 12c New CapabilitiesOracle Optimizer: 12c New Capabilities
Oracle Optimizer: 12c New Capabilities
 
Understanding Query Optimization with ‘regular’ and ‘Exadata’ Oracle
Understanding Query Optimization with ‘regular’ and ‘Exadata’ OracleUnderstanding Query Optimization with ‘regular’ and ‘Exadata’ Oracle
Understanding Query Optimization with ‘regular’ and ‘Exadata’ Oracle
 
Monitoreo del performance de linux con sar
Monitoreo del performance de linux con sarMonitoreo del performance de linux con sar
Monitoreo del performance de linux con sar
 
Diagnóstico de problemas de red para DBAs
Diagnóstico de problemas de red para DBAsDiagnóstico de problemas de red para DBAs
Diagnóstico de problemas de red para DBAs
 
Cutting edge Essbase
Cutting edge EssbaseCutting edge Essbase
Cutting edge Essbase
 
Gestión de grandes volúmenes de información
Gestión de grandes volúmenes de informaciónGestión de grandes volúmenes de información
Gestión de grandes volúmenes de información
 
RMAN – The Pocket Knife of a DBA
RMAN – The Pocket Knife of a DBA RMAN – The Pocket Knife of a DBA
RMAN – The Pocket Knife of a DBA
 
Oracle Linux and Oracle Database - A Trusted Combination
Oracle Linux and Oracle Database - A Trusted Combination Oracle Linux and Oracle Database - A Trusted Combination
Oracle Linux and Oracle Database - A Trusted Combination
 
Re-­Think Mobile… Beyond Mobile­‐First: Oracle Mobile Strategy and Overview
Re-­Think Mobile… Beyond Mobile­‐First: Oracle Mobile Strategy and OverviewRe-­Think Mobile… Beyond Mobile­‐First: Oracle Mobile Strategy and Overview
Re-­Think Mobile… Beyond Mobile­‐First: Oracle Mobile Strategy and Overview
 
Building Better Mobile Backends with Oracle Mobile Cloud Service
Building Better Mobile Backends with Oracle Mobile Cloud Service	Building Better Mobile Backends with Oracle Mobile Cloud Service
Building Better Mobile Backends with Oracle Mobile Cloud Service
 

Último

investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosJhonJairoRodriguezCe
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 

Último (10)

investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 

ADF 12c como Backend

  • 1. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 ADF 12c como Backend REST API
  • 2. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 ¿Qué es Oracle ADF? ● Framework de desarrollo ● Modelo-Vista-Controlador ● Desarrollado sobre Java EE ● 11g → JavaEE 5 ● 12c → JavaEE 6 ● Visual y Declarativo ● Interfaz de usuario moderna ● Flujos de navegación avanzados (Task Flows) ● Seguridad integrada ● IDEs: JDeveloper and Eclipse(OEPE)* *Funcionalidades limitadas
  • 3. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 ¿Qué es Oracle ADF Essentials? ● Subconjunto de las tecnologías clave de Oracle ADF: ● ADF Faces ● ADF DvT ● ADF Controller ● ADF Binding ● ADF Bussines Components ● Gratis para desarrollar, Gratis para desplegar ● JDeveloper/Eclipse* ● MySQL* ● Glassfish *Funcionalidades limitadas
  • 4. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 ADF 12.2.1.x ● Versión 12.2.1.0 -> liberada en Octubre de 2015 ● Versión 12.2.1.1 -> liberada en Junio de 2016 ● Actualización a Java SE 8 ● Actualización a Java EE 6 ● Nuevos componentes para ADF Faces y ADF DvT ● Nuevos componentes y plantilla para diseño adaptable ● Soporta CSS3 ● Soporte para últimas versiones de navegadores ● Soporta la creación de APIs tipo Rest a partir del modelo de negocio ● Soporte para Git ● Mejor soporte para Maven
  • 5. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 REST REREpresentational SState TTransfer file.png Sin Estado http://servidor/img/file.png POST GET C R U D HTTP URL XML ... Estándar ...
  • 6. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 JSON JJavaSScript OObject NNotation { "RegionsComplete" : { "discrColumnType" : false, "attributes" : [ { "name" : "RegionId", "type" : "integer", }, { "name" : "RegionName", "type" : "string", } ] } } <xml> <RegionsComplete> <discrColumnType>false</discrColumnType> <attributes> <attribute> <name>RegionId</name> <type>integer</type> </attribute> <attribute> <name>RegionName</name> <type>string</type> </attribute> </attributes> </RegionsComplete> Estándar AZ...
  • 7. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 HATEOAS HHypermedia AAs TThe EEngine OOf AApplication SState ● Links en las respuestas ● Cliente puede navegar dinámicamente ● Dos estilos: – Weblinking – HAL
  • 8. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 REST API RAML Apiary HTTP
  • 9. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 REST API – Guía de diseño ● Identificar los recursos ● Transformar operaciones a métodos HTTP ● Seguir patrón de nombres para los recursos – Sustantivos – Plural para las colecciones – Usar – Evitar _ – No exceder 200 chars ● Usar Accept y Content-Type ● Usar HTTP Caché
  • 10. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 REST API – Guía de diseño ● Usar Accept-Language para multilenguaje ● Fechas y horas -> Usar ISO8601 ● Respuesta parcial ● Actualización parcial ● Consistencia en datos ● Retornar recursos modificados ● Paginación en colecciones ● Búsqueda y ordenamiento ● Versionamiento
  • 11. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 REST API – Versionamiento ✔ Siempre ✔ Permite nuevas versiones ✔ Compatibilidad hacia atrás por un tiempo Tres técnicas: 1) Num. Versión en URL 2) HTTP Custom-Header 3) HTTP Accept
  • 12. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 ADF 12c – ADF BC RESTful Web Services
  • 13. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 ADF 12c – ADF BC RESTful Web Services ● latest -> Se refiere a la versión más actual ● describe -> Para obtener información de los recursos – Response Content-Type: application/vnd.oracle.adf.description+json ● onlyData=true -> Retorna solo datos, sin enlaces ● totalResults=true -> Retorna también la cantidad de registros ● No usar PUT, usar PATCH ● POST/PATCH Content-Type: application/vnd.oracle.adf.resourceitem+json ● Métodos personalizados – Content-Type: application/vnd.oracle.adf.action+json ● Sólo ViewObjects creadas de forma declarativa ofrecen opciones avanzadas
  • 14. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 Demo 1) Crear REST API para regiones y países del esquema HR 2) Crear una nueva versión de la REST API 3) Respuesta parcial: fields=att1,att2... 4) CRUD 5) Métodos personalizados 6) Paginación: limit, offset, count, hasMore 7) Filtros: 1) finder=PrimaryKey;Id=X,Id2=Y 2) q=Att=<>... 8) Ordenamiento: Att:asc/desc,Att2:asc/desc
  • 15. ORACLE OTN TOURAlexis López - aalopez@gmail.com - @aa_lopez AGO-2016 v1 Recursos en línea ● acelopez.com - Blog acerca de Java y ADF ● Código fuente de ADF – Oracle Support ● ADF Architecture TV ● Grupo de metodología empresarial de ADF (ADF EMG) ● Comunidad ADF en Google+ ● OTN Forums – JDeveloper y ADF ● Oracle ADF Architecture Square ● Oracle ADF Code Corner ● Íconos: Benjamin STAWARZ (descargados desde iconfinder.com)