Enviar búsqueda
Cargar
Real life-maf-2015-k scope-final
•
1 recomendación
•
1,042 vistas
Luc Bors
Seguir
This is the presentation I gave at ODTUG KScope15 in Hollywood Florida.
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 68
Descargar ahora
Descargar para leer sin conexión
Recomendados
ADF Essentials (KScope14)
ADF Essentials (KScope14)
Luc Bors
Real life-maf-2015
Real life-maf-2015
Luc Bors
Reaching out from ADF Mobile (ODTUG KScope 2014)
Reaching out from ADF Mobile (ODTUG KScope 2014)
Luc Bors
Real Life MAF (2.2) Oracle Open World 2015
Real Life MAF (2.2) Oracle Open World 2015
Luc Bors
ADF Mobile: 10 Things you don't get from the developers guide
ADF Mobile: 10 Things you don't get from the developers guide
Luc Bors
Tweet4Beer - Beertap powered by Java goes IoT and JavaFX
Tweet4Beer - Beertap powered by Java goes IoT and JavaFX
Bruno Borges
Oracle Cloud: Anything as a Service
Oracle Cloud: Anything as a Service
Bruno Borges
WebSockets - Realtime em Mundo Conectado
WebSockets - Realtime em Mundo Conectado
Bruno Borges
Recomendados
ADF Essentials (KScope14)
ADF Essentials (KScope14)
Luc Bors
Real life-maf-2015
Real life-maf-2015
Luc Bors
Reaching out from ADF Mobile (ODTUG KScope 2014)
Reaching out from ADF Mobile (ODTUG KScope 2014)
Luc Bors
Real Life MAF (2.2) Oracle Open World 2015
Real Life MAF (2.2) Oracle Open World 2015
Luc Bors
ADF Mobile: 10 Things you don't get from the developers guide
ADF Mobile: 10 Things you don't get from the developers guide
Luc Bors
Tweet4Beer - Beertap powered by Java goes IoT and JavaFX
Tweet4Beer - Beertap powered by Java goes IoT and JavaFX
Bruno Borges
Oracle Cloud: Anything as a Service
Oracle Cloud: Anything as a Service
Bruno Borges
WebSockets - Realtime em Mundo Conectado
WebSockets - Realtime em Mundo Conectado
Bruno Borges
Oracle MAF real life OOW.pptx
Oracle MAF real life OOW.pptx
Luc Bors
Accumulo Summit 2014: Accumulo on YARN
Accumulo Summit 2014: Accumulo on YARN
Accumulo Summit
Server Side JavaScript on the Java Platform - David Delabassee
Server Side JavaScript on the Java Platform - David Delabassee
JAXLondon2014
AEM and Sling
AEM and Sling
Lo Ki
Cross-platform mobile apps with Apache Cordova
Cross-platform mobile apps with Apache Cordova
Ivano Malavolta
Hybrid application development
Hybrid application development
Engin Hatay
HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016
Ed Burns
PROGRAMMING IN JAVA- unit 4-part II
PROGRAMMING IN JAVA- unit 4-part II
SivaSankari36
JavaCro'15 - HTTP2 Comes to Java! - David Delabassee
JavaCro'15 - HTTP2 Comes to Java! - David Delabassee
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
Pennsylvania Banner User Group Webinar: Oracle SQL Developer Tips & Tricks
Pennsylvania Banner User Group Webinar: Oracle SQL Developer Tips & Tricks
Jeff Smith
Servidores de Aplicação: por que ainda precisamos deles?
Servidores de Aplicação: por que ainda precisamos deles?
Bruno Borges
Java: Create The Future Keynote
Java: Create The Future Keynote
Simon Ritter
AFNetworking
AFNetworking
joaopmaia
Oracle REST Data Services
Oracle REST Data Services
Chris Muir
Oracle SQL Developer: You're Doing it Wrong!
Oracle SQL Developer: You're Doing it Wrong!
Jeff Smith
Google App Engine for Java
Google App Engine for Java
Lars Vogel
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Chris Muir
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
Bruno Borges
[2015/2016] Apache Cordova
[2015/2016] Apache Cordova
Ivano Malavolta
Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0
Diego Zuluaga
eProseed Oracle Open World 2016 debrief - Oracle 12.2.0.1 Database
eProseed Oracle Open World 2016 debrief - Oracle 12.2.0.1 Database
Marco Gralike
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
Chris Muir
Más contenido relacionado
La actualidad más candente
Oracle MAF real life OOW.pptx
Oracle MAF real life OOW.pptx
Luc Bors
Accumulo Summit 2014: Accumulo on YARN
Accumulo Summit 2014: Accumulo on YARN
Accumulo Summit
Server Side JavaScript on the Java Platform - David Delabassee
Server Side JavaScript on the Java Platform - David Delabassee
JAXLondon2014
AEM and Sling
AEM and Sling
Lo Ki
Cross-platform mobile apps with Apache Cordova
Cross-platform mobile apps with Apache Cordova
Ivano Malavolta
Hybrid application development
Hybrid application development
Engin Hatay
HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016
Ed Burns
PROGRAMMING IN JAVA- unit 4-part II
PROGRAMMING IN JAVA- unit 4-part II
SivaSankari36
JavaCro'15 - HTTP2 Comes to Java! - David Delabassee
JavaCro'15 - HTTP2 Comes to Java! - David Delabassee
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
Pennsylvania Banner User Group Webinar: Oracle SQL Developer Tips & Tricks
Pennsylvania Banner User Group Webinar: Oracle SQL Developer Tips & Tricks
Jeff Smith
Servidores de Aplicação: por que ainda precisamos deles?
Servidores de Aplicação: por que ainda precisamos deles?
Bruno Borges
Java: Create The Future Keynote
Java: Create The Future Keynote
Simon Ritter
AFNetworking
AFNetworking
joaopmaia
Oracle REST Data Services
Oracle REST Data Services
Chris Muir
Oracle SQL Developer: You're Doing it Wrong!
Oracle SQL Developer: You're Doing it Wrong!
Jeff Smith
Google App Engine for Java
Google App Engine for Java
Lars Vogel
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Chris Muir
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
Bruno Borges
[2015/2016] Apache Cordova
[2015/2016] Apache Cordova
Ivano Malavolta
Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0
Diego Zuluaga
La actualidad más candente
(20)
Oracle MAF real life OOW.pptx
Oracle MAF real life OOW.pptx
Accumulo Summit 2014: Accumulo on YARN
Accumulo Summit 2014: Accumulo on YARN
Server Side JavaScript on the Java Platform - David Delabassee
Server Side JavaScript on the Java Platform - David Delabassee
AEM and Sling
AEM and Sling
Cross-platform mobile apps with Apache Cordova
Cross-platform mobile apps with Apache Cordova
Hybrid application development
Hybrid application development
HTTP/2 in the Java Platform -- Java Champions call February 2016
HTTP/2 in the Java Platform -- Java Champions call February 2016
PROGRAMMING IN JAVA- unit 4-part II
PROGRAMMING IN JAVA- unit 4-part II
JavaCro'15 - HTTP2 Comes to Java! - David Delabassee
JavaCro'15 - HTTP2 Comes to Java! - David Delabassee
Pennsylvania Banner User Group Webinar: Oracle SQL Developer Tips & Tricks
Pennsylvania Banner User Group Webinar: Oracle SQL Developer Tips & Tricks
Servidores de Aplicação: por que ainda precisamos deles?
Servidores de Aplicação: por que ainda precisamos deles?
Java: Create The Future Keynote
Java: Create The Future Keynote
AFNetworking
AFNetworking
Oracle REST Data Services
Oracle REST Data Services
Oracle SQL Developer: You're Doing it Wrong!
Oracle SQL Developer: You're Doing it Wrong!
Google App Engine for Java
Google App Engine for Java
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
[2015/2016] Apache Cordova
[2015/2016] Apache Cordova
Apigee deploy grunt plugin.1.0
Apigee deploy grunt plugin.1.0
Similar a Real life-maf-2015-k scope-final
eProseed Oracle Open World 2016 debrief - Oracle 12.2.0.1 Database
eProseed Oracle Open World 2016 debrief - Oracle 12.2.0.1 Database
Marco Gralike
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
Chris Muir
Delivering Mobile Apps to the Field with Oracle JET
Delivering Mobile Apps to the Field with Oracle JET
Simon Haslam
BGOUG 2014 Decrease Your MySQL Attack Surface
BGOUG 2014 Decrease Your MySQL Attack Surface
Georgi Kodinov
Delivering Mobile Apps to the Field with Oracle
Delivering Mobile Apps to the Field with Oracle
Simon Haslam
JFall 2016: Oracle JET Session
JFall 2016: Oracle JET Session
Geertjan Wielenga
Oracle JET, with JET Mobile Content
Oracle JET, with JET Mobile Content
Geertjan Wielenga
Introduction to Marketing Cloud UI, Adobe Summit 2014
Introduction to Marketing Cloud UI, Adobe Summit 2014
Damien Antipa
Testdroid:
Testdroid:
Lingkai Shao
Migrating From Applets to Java Desktop Apps in JavaFX
Migrating From Applets to Java Desktop Apps in JavaFX
Bruno Borges
Oracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with Less
Ed Burns
Hybrid mobile development with Oracle JET
Hybrid mobile development with Oracle JET
Rohit Dhamija
Building Your API for Longevity
Building Your API for Longevity
MuleSoft
Choosing the right mobile architecture
Choosing the right mobile architecture
Lonneke Dikmans
Surviving Life in the JavaScript Ecosystem
Surviving Life in the JavaScript Ecosystem
Geertjan Wielenga
eProseed Oracle Open World 2016 debrief - Oracle Management Cloud
eProseed Oracle Open World 2016 debrief - Oracle Management Cloud
Marco Gralike
Slovenian Oracle User Group
Slovenian Oracle User Group
Geertjan Wielenga
J-Fall 2014 Community Keynote by Oracle
J-Fall 2014 Community Keynote by Oracle
javafxpert
Session at Oredev 2016.
Session at Oredev 2016.
Geertjan Wielenga
10 Building Blocks for Enterprise JavaScript
10 Building Blocks for Enterprise JavaScript
Geertjan Wielenga
Similar a Real life-maf-2015-k scope-final
(20)
eProseed Oracle Open World 2016 debrief - Oracle 12.2.0.1 Database
eProseed Oracle Open World 2016 debrief - Oracle 12.2.0.1 Database
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
Mobile Mumbo Jumbo - Demystifying the World of Enterprise Mobility with Oracle
Delivering Mobile Apps to the Field with Oracle JET
Delivering Mobile Apps to the Field with Oracle JET
BGOUG 2014 Decrease Your MySQL Attack Surface
BGOUG 2014 Decrease Your MySQL Attack Surface
Delivering Mobile Apps to the Field with Oracle
Delivering Mobile Apps to the Field with Oracle
JFall 2016: Oracle JET Session
JFall 2016: Oracle JET Session
Oracle JET, with JET Mobile Content
Oracle JET, with JET Mobile Content
Introduction to Marketing Cloud UI, Adobe Summit 2014
Introduction to Marketing Cloud UI, Adobe Summit 2014
Testdroid:
Testdroid:
Migrating From Applets to Java Desktop Apps in JavaFX
Migrating From Applets to Java Desktop Apps in JavaFX
Oracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with Less
Hybrid mobile development with Oracle JET
Hybrid mobile development with Oracle JET
Building Your API for Longevity
Building Your API for Longevity
Choosing the right mobile architecture
Choosing the right mobile architecture
Surviving Life in the JavaScript Ecosystem
Surviving Life in the JavaScript Ecosystem
eProseed Oracle Open World 2016 debrief - Oracle Management Cloud
eProseed Oracle Open World 2016 debrief - Oracle Management Cloud
Slovenian Oracle User Group
Slovenian Oracle User Group
J-Fall 2014 Community Keynote by Oracle
J-Fall 2014 Community Keynote by Oracle
Session at Oredev 2016.
Session at Oredev 2016.
10 Building Blocks for Enterprise JavaScript
10 Building Blocks for Enterprise JavaScript
Más de Luc Bors
Talk to me Goose: Going beyond your regular Chatbot
Talk to me Goose: Going beyond your regular Chatbot
Luc Bors
Extending Oracle SaaS Using Oracle Cloud UX Rapid Development Kit
Extending Oracle SaaS Using Oracle Cloud UX Rapid Development Kit
Luc Bors
NO CODE : Or How to Extend Oracle SaaS with Oracle Visual Builder Cloud Service
NO CODE : Or How to Extend Oracle SaaS with Oracle Visual Builder Cloud Service
Luc Bors
OgH Data Visualization Special Part III
OgH Data Visualization Special Part III
Luc Bors
OgH Data Visualization Special Part II
OgH Data Visualization Special Part II
Luc Bors
OgH Data Visualization Special Part I
OgH Data Visualization Special Part I
Luc Bors
MAF push notifications
MAF push notifications
Luc Bors
Doag wysiwyg
Doag wysiwyg
Luc Bors
amis-adf-enterprise-mobility
amis-adf-enterprise-mobility
Luc Bors
Oracle day 2014-mobile-customer-case
Oracle day 2014-mobile-customer-case
Luc Bors
AMIS UX Event 2014: Mobile ADF; From Design To Device; The Tools that make it...
AMIS UX Event 2014: Mobile ADF; From Design To Device; The Tools that make it...
Luc Bors
oow2013-adf-mo-bi-le
oow2013-adf-mo-bi-le
Luc Bors
Goodbye Nightmare : Tops and Tricks for creating Layouts
Goodbye Nightmare : Tops and Tricks for creating Layouts
Luc Bors
Dont Reinvent the Wheel: Tips and Tricks for reuse in ADF
Dont Reinvent the Wheel: Tips and Tricks for reuse in ADF
Luc Bors
ADF Mobile : Best Practices for Developing Applications with Oracle ADF Mobile
ADF Mobile : Best Practices for Developing Applications with Oracle ADF Mobile
Luc Bors
Oracle ADF Mobile OGh (Oracle User Group Netherlands)
Oracle ADF Mobile OGh (Oracle User Group Netherlands)
Luc Bors
Real life forms to adf
Real life forms to adf
Luc Bors
ADF Mobile - an intro for Developers
ADF Mobile - an intro for Developers
Luc Bors
How to Bring Common UI Patterns to ADF
How to Bring Common UI Patterns to ADF
Luc Bors
An ADF Special Report
An ADF Special Report
Luc Bors
Más de Luc Bors
(20)
Talk to me Goose: Going beyond your regular Chatbot
Talk to me Goose: Going beyond your regular Chatbot
Extending Oracle SaaS Using Oracle Cloud UX Rapid Development Kit
Extending Oracle SaaS Using Oracle Cloud UX Rapid Development Kit
NO CODE : Or How to Extend Oracle SaaS with Oracle Visual Builder Cloud Service
NO CODE : Or How to Extend Oracle SaaS with Oracle Visual Builder Cloud Service
OgH Data Visualization Special Part III
OgH Data Visualization Special Part III
OgH Data Visualization Special Part II
OgH Data Visualization Special Part II
OgH Data Visualization Special Part I
OgH Data Visualization Special Part I
MAF push notifications
MAF push notifications
Doag wysiwyg
Doag wysiwyg
amis-adf-enterprise-mobility
amis-adf-enterprise-mobility
Oracle day 2014-mobile-customer-case
Oracle day 2014-mobile-customer-case
AMIS UX Event 2014: Mobile ADF; From Design To Device; The Tools that make it...
AMIS UX Event 2014: Mobile ADF; From Design To Device; The Tools that make it...
oow2013-adf-mo-bi-le
oow2013-adf-mo-bi-le
Goodbye Nightmare : Tops and Tricks for creating Layouts
Goodbye Nightmare : Tops and Tricks for creating Layouts
Dont Reinvent the Wheel: Tips and Tricks for reuse in ADF
Dont Reinvent the Wheel: Tips and Tricks for reuse in ADF
ADF Mobile : Best Practices for Developing Applications with Oracle ADF Mobile
ADF Mobile : Best Practices for Developing Applications with Oracle ADF Mobile
Oracle ADF Mobile OGh (Oracle User Group Netherlands)
Oracle ADF Mobile OGh (Oracle User Group Netherlands)
Real life forms to adf
Real life forms to adf
ADF Mobile - an intro for Developers
ADF Mobile - an intro for Developers
How to Bring Common UI Patterns to ADF
How to Bring Common UI Patterns to ADF
An ADF Special Report
An ADF Special Report
Último
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
sammart93
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Principled Technologies
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
debabhi2
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Remote DBA Services
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
MIND CTI
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Neo4j
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Juan lago vázquez
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
lior mazor
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Martijn de Jong
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Drew Madelung
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
apidays
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
The Digital Insurer
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
Khushali Kathiriya
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
DianaGray10
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Rafal Los
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
Product Anonymous
Último
(20)
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
Real life-maf-2015-k scope-final
1.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | REAL-LIFE ORACLE MAF Luc Bors eProseed NL ODTUG KScope 2015 Hollywood Florida June 23rd 2015 Things You Don’t Learn from Oracle’s Developer’s Guide
2.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |2 WHO AM I ? • Luc Bors • Managing Partner • eProseed NL • Oracle Partner
3.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | PROGRAM AGENDA Introducing Oracle MAF The Basics; DnD Development Device Properties, Springboard, Gestures (Common Patterns) Some Annoyances Device Interaction REST JSON : Be Prepared for the Server Side Developer ? 1 2 3 4 5 3 6
4.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |4 BEFORE WE START • Let’s look at some basic terms related to MAF and Mobile – Springboard – Gestures – Feature – Device Interaction – Notifications
5.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | PROGRAM AGENDA Introducing Oracle MAF The Basics; DnD Development Device Properties, Springboard, Gestures (Common Patterns) Some Annoyances Device Interaction REST JSON : Be Prepared ? 1 2 3 4 5 5 6
6.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |6 TO DND OR NOT TO DND ? • Drag and Drop Development • Pro’s – Quick • Cons – Dirty
7.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |7 TO DND OR NOT TO DND ? • Drag and Drop Development Demo
8.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |8 TO DND OR NOT TO DND ? • Drag and Drop Development of your app
9.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |9 CREATE FRAGMENTS • Create Fragments that can be re-used • Fragments can have styling • Assign Attribute values when Fragment is used
10.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |10 USE FRAGMENTS • Drop fragment on page • Assign Attribute values
11.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |11 TO DND OR NOT TO DND ? • The hard work – Create page fragments first – Create bindings manually – Assign attribute Values • VS
12.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | PROGRAM AGENDA Introducing Oracle MAF The Basics; DnD Development Device Properties, Springboard, Gestures (Common Patterns) Some Annoyances Device Interaction REST JSON : Be Prepared ? 1 2 3 4 5 12 6
13.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |13 DEVICE PROPERTIES • Benefit from Device properties • Do what is possible, avoid what cannot be done
14.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |14 LOADING IN THE BACKGROUND
15.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | HOW IT WORKS • Check network connectivity – #{deviceScope.hardware.networkStatus} – "wifi", "2g", "unknown", "none”, etc etc • Start background thread – Load Images in background 15
16.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |16 LOADING IN THE BACKGROUND
17.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | DEMO 17
18.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | PROGRAM AGENDA Introducing Oracle MAF The Basics; DnD Development Device Properties, Springboard, Gestures (Common Patterns) Some Annoyances Device Interaction REST JSON : Be Prepared ? 1 2 3 4 5 18 6
19.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | CONTROLLING YOUR APPLICATION • Springboard configuration in adfmf-application.xml
20.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | THE DEFAULT SPRINGBOARD
21.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | THE CUSTOM SPRINGBOARD
22.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | CONFIGURING THE SPRINGBOARD
23.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | FEATURE ARCHIVES • Feature Archives can be reused • Deploy MAF app as FAR • Consume features from FAR in other apps
24.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |24 CUSTOM TOGGLE SPRINGBOARD • What is the Default ?
25.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |25 CUSTOM TOGGLE SPRINGBOARD • Use AdfmfSlidingWindowUtilities API. – oracle.adfmf.framework.api.AdfmfSlidingWindowUtilities – Note that the sliding window plugin API can only be used for features defined within the application that do not appear in the navigation bar and is not the springboard feature . – So in order to make a custom springboard that nicely slides in and out of view we need to instruct the app that it has NO springboard, and create a custom feature that functions as a springboard.
26.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |26 CUSTOM TOGGLE SPRINGBOARD • What is the Custom ?
27.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | DEMO 27
28.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | PROGRAM AGENDA Introducing Oracle MAF The Basics; DnD Development Device Properties, Springboard, Gestures (Common Patterns) Some Annoyances Device Interaction REST JSON : Be Prepared ? 1 2 3 4 5 28 6
29.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | GESTURES ( AND UX ) • Gestures can be used from: – Buttons – Links – List Item <amx:showPopupBehavior popupid="pop1" type="tapHold“ />
30.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | GESTURE ABUSE • .. Or how to confuse your app user… <amx:showPopupBehavior popupid="pop1" type=”swipeLeft“ /> <amx:actionListener binding="#{mybean.deleteRow}" type=”swipeDown"/>
31.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | WHAT APPLE DID (IOS6 à IOS7) • I rest my case…… • Make sure to be aware of the right standard: – For Device – For OS – For version • They changed delete swipe from right to left…….
32.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | THIS IS HELPFULL
33.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | USE CASE EXAMPLE
34.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | INGREDIENTS • A (Web) service and datacontrol • A Page with Listview • An ActionListener with type SwipeDown • Smart Java Code to call service (conditionally) <amx:listView var="row” value="#{bindings.allLocations.collectionModel}" fetchSize="#{bindings.allLocations.rangeSize}” id="lv1"> <amx:listItem id="li1"> <amx:actionListener type="swipeDown” binding="#{pageFlowScope.locationsBackingBean.checkForUpdates}”>
35.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | EXAMPLE
36.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | BONUS PATTERN (ACTION COMPLETE) • Description: – User performs action – App confirms and navigates back • Challenge: – Programmatic popup from JAVA • Solution: – Call Javascript from Java – Invoke (Hidden) Buttons (with showPopupBehavior) from JavaScript 36 AdfmfContainerUtilities.invokeContainerJavaScriptFunction( FeatureContext.getCurrentFeatureId(), "popupUtilsShowPopup", new Object[] {"_popShowId", text}); adf.mf.api.amx.triggerBubbleEventListener(popupOpener,"tap");
37.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | DEMO 37
38.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | PROGRAM AGENDA Introducing Oracle MAF The Basics; DnD Development Device Properties, Springboard, Gestures (Common Patterns) Some Annoyances Device Interaction REST JSON : Be Prepared ? 1 2 3 4 5 38 6
39.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | WHERE ARE MY LOGFILES ? • Finding the actual log file for an app, particularly since iOS 8 and Xcode 6, is a somewhat tricky • Logfile – application.log 39
40.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | THERE ARE MY LOGFILES ! • iOS simulator content – /Users/lucbors/Library/Developer/CoreSimulator 40
41.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | THERE ARE MY DEVICES ! • iOS simulator content – /Users/lucbors/Library/Developer/CoreSimulator/Devices 41
42.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | THERE IS MY DEVICE ! • iOS simulator content – /Users/lucbors/Library/Developer/CoreSimulator/Devices – Use ls -lt 42
43.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | THERE IS MY APPLICATION ! • iOS simulator content – /Users/lucbors/Library/Developer/CoreSimulator/Devices/ <device>/data/Containers/Data/Application 43
44.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | THERE IS MY LOGFILE ! • iOS simulator content – /Users/lucbors/Library/Developer/CoreSimulator/Devices/ <device>/data/Containers/Data/Application/<app>/Documents/ logs 44
45.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | WHERE ARE MY LOGFILES ? • Change Location 45
46.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | PROGRAM AGENDA Introducing Oracle MAF The Basics; DnD Development Device Properties, Springboard, Gestures (Common Patterns) Some Annoyances Device Interaction REST JSON : Be Prepared ? 1 2 3 4 5 46 6
47.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | DEVICE INTERACTION • The Device Datacontrol • Drag n Drop support • Attributes as fields • Operations as buttons • Or as a link
48.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | BEHIND THE SCENES
49.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | CAMERA INTERACTION • Take a picture …………… import oracle.adf.model.datacontrols.device; DeviceManager dm = DeviceManagerFactory.getDeviceManager(); if (dm.hasCamera){ dm.getPicture( 100, DeviceManager.CAMERA_DESTINATIONTYPE_FILE_URI, DeviceManager.CAMERA_SOURCETYPE_CAMERA, false, DeviceManager.CAMERA_ENCODINGTYPE_PNG, 200, 200); } DeviceManager.CAMERA_SOURCETYPE_PHOTOLIBRARY
50.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | MOBILE MAPS
51.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | GOOGLE PLACES
52.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | USE GPS FOR LOCATION BASED SERVICES public Location getPosition(){ DeviceManager dm=DeviceManagerFactory.getDeviceManager(); Location currentPosition = dm.getCurrentPosition( 60000,true); return currentPosition; } Location myPosition = getPosition(); String locationParameter = “location=” + myPosition.getLatitude(); +”,” + myPosition.getLongitude(); restServiceAdapter.setRequestURI( "json?” +locationParameter +”&radius=1000” +”&types=food” +”&sensor=false&key=<yourApiKey>");
53.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | DISPLAY ON THE MAP
54.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |54 PUSH NOTIFICATIONS
55.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | LOCAL NOTIFICATIONS • Declarative – DeviceFeatures DC • JavaScript API – adf.mf.api.localnotification • Java API – adfmfContainerUtilities 55
56.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | CREATING A LOCAL NOTIFICATION • AdfmfContainerUtilities.addLocalNotification(options) • AdfmfContainerUtilities.cancelLocalNotification(notificationId); 56
57.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | REPEATING LOCAL NOTIFICATIONS 57
58.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |58 CANCELING REPEATING NOTIFICATIONS • Cancelling a notification means that the notification is COMPLETELY cancelled even if it was scheduled to fire every DAY • Create a new one after cancelling
59.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | DEMO 59
60.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. | PROGRAM AGENDA Introducing Oracle MAF The Basics; DnD Development Device Properties, Springboard, Gestures (Common Patterns) Some Annoyances Device Interaction REST JSON : Be Prepared 1 2 3 4 5 60 6
61.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |61 OVERVIEW OF A MAF SOLUTION JSONBeanSerializationHelper POJO Datacontrol Data Objects Data Objects Data ObjectsDataArray REST Adapter MAFBindingLayer RemoteRESTJSON R E S T C o n n e c t i o n MAF App
62.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |62 MAF WITH REST JSON ON OSB
63.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |63 CLASS HIERARCHY RestCallerUtil FlightCustURIs JsonArrayToFlightPassengerListArray JsonArrayToFlightDetailsArray FlightPassengerListArray FlightDetailsArray FlightPassengerListEntity FlightDetailsEntity FlightPassengersDC CustomerComplaintEntity FlightsRestService CustomerComplaintObject CustomerComplaintObjectToJsonObject CustomerRestService
64.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |64 RESTSERVICE ADAPTER DOES THE CALL • setRequestType – REQUEST_TYPE_GET à to GET flights and Passengers – REQUEST_TYPE_POST à to POST a complaint • setConnectionName: To use the correct REST-connection • setRequestURI à What is it that we want to do – /flights/KL34 – /flights/KL34/passengerlist – /complaints • NOTE: Request URI are bundled in a Custom Class (FlightCustURIs)
65.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |65 DEMO WITHOUT THE OSB { "FlightCode": { "CarrierCode": "KL", "FlightNumber": "34" }, "FlightDate": "2015-03-07T09:50:00.000+01:0 "TotalNumberOfPassengers": "22", "Passengers": [ { "FirstName": "Diana", "LastName": "Woodstock", "Country": "UK", "FrequentFlyerNumber": "BB123332", "Seat": "2B" }, { "FirstName": "William", "LastName": "Simon", "Country": "US", "FrequentFlyerNumber": "KK9182673", "Seat": "4C" },
66.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |66 SUMMARY • Many Options to Develop • Many Features to Use • Highly Configurable • Use Common Patterns
67.
68.
Copyright © 2014,
eProseed and/or its affiliates. All rights reserved. |
Descargar ahora