SlideShare a Scribd company logo
1 of 28
Integrating ADF Mobile with
WebCenter

Brian “Bex” Huff
Chief Software Architect
Oracle ACE Director
Agenda


  History of the mobile web
  What’s your Mobile Strategy?
  Crash Course in ADF
  Native, ADF Mobile, and HTML5
  Integrating Content and Web Services
  Recommendations
  Tips and Traps




                                          2
History of Mobile Apps


  Native
   • All mobile devices have an API for native programming
   • Used mainly for developers working on one specific platform
  Wireless Application Protocol (1997)
   • Slimmed-down version of HTML for tiny mobile screens
   • Relatively unused
  BlackBerry
   • Email on my mobile phone! Yay!!! I mean... Boooooo!
  iPhone
   • The first true “smartphone”
   • Native language: Objective-C
  HTML5
   • Supported on all mobile smartphones
   • Supported on some desktops
                                                                   3
Mobile Challenges


  Richer context
   • Location, acceleration, camera, video
   • Offline database storage, messages and notifications


  Design techniques
   • Objective-C, Java, C#, Native libraries
   • Web services, JSON, HTML5, JavaScript


  New devices and operating systems every month!
   • iPhone, iPod Touch, iPad, Kindle, Nook
   • iOS, Blackberry, WebOS, Windows Mobile
   • Android has already “forked” three times!



                                                            4
Mobile OS Market Share


  2013 Q1 Sales by OS (ABI Research / CNN)




                                              5
Technology Adoption Rates




                            6
Words of Warning!


  Heed the lessons from the dot com bust
   • Don’t rush to mobile like people rushed to the web
   • You’ll spend too much and get too little


  Your web site should be a natural extension of your business

  Your mobile app should be a natural extension of your business




                                                                    7
Words of Wisdom...



 "Ten mobile apps is all I need"
        -- David Heinemeier Hansson, creator of Ruby on Rails




 "If we only bought what we needed, the economy would collapse"
        -- Paco Underhill




                                                                  8
Three Main Mobile Strategies


  Mobile application
   • Create native mobile application (iOS, Android, etc.)


  Mobile website
   • Your current website data, optimized for a mobile browser
   • Optimized content and interactions


  Hybrid applications
   • Part application, part website
   • Built with common web technologies (HTML5/JavaScript)
   • Load native libraries only as needed




                                                                 9
Mobile Application


  “Native Application” strategy
   • Initially the only way to make mobile apps


  Are smart phone app sales your main moneymaker?
   • $15 billion market in 2013


  Probably not what you need!




                                                     10
Mobile Web


  The HTML5 Strategy
   • Use the power of HTML5
   • Animation, offline storage, location services, etc.


  Supported on most mobile browsers

  Incredibly powerful

  Preferred by most users, according to Adobe
   • Exceptions: social, music, and games




                                                           11
Users Prefer Mobile Web To Mobile Apps




                                         12
Hybrid Application: Web-Based Native
Apps

  Three common frameworks
   • Titanium, PhoneGap, ADF Mobile


  ADF Mobile
   • Released in November, 2012


  ADF Mobile is based partly on PhoneGap
   • Allow you to create a “native” application using only HTML5 and JavaScript
   • New component-driven framework: ADF Mobile AMX files




                                                                                  13
History of ADF Mobile


  ADF Mobile Browser
   • JSF skins optimized for older mobile phones
   • Open sourced as Trinidad skins
   • Probably not what you need


  ADF ViewController with mobile skin
   • Slimmed down View, optimized for mobile
   • Supports gestures


  ADF Mobile
   • Next-Generation hybrid mobile toolkit




                                                   14
Crash Course in ADF


  ADF is a Model, View, Controller framework
   • Support included in JDeveloper and Eclipse
   • Tight DataBinding layer ties all 3 together


  Model is typically ADF Business Components
   • POJOs, Web Services, Struts, and EJB also supported


  View is typically ADF Faces (declarative framework)
   • JSP, JSF, ADF Mobile (AMX), Swing also supported
   • AMX very similar to JSF: declarative component based framework


  Controller is typically ADF Task Flows
   • JSF Page Flows also supported, but less powerful

                                                                      15
ADF Mobile Architecture




                          16
Integrating Hybrid Apps with your Enterprise


  Best practice to have middleware between app and enterprise

  What about existing SOAP/JSON APIs?
   • WebCenter Spaces? WebCenter Content?


  Back-end APIs can change frequently
   •   WebCenter Content is mostly stable, but no guarantee
   •   Existing APIs may be too “chatty”
   •   Updating Hybrid Apps is a pain that should be avoided
   •   Have a slimmed-down API
        • ReST-ful XML or JSON good choices
        • JSON requires a bit more work in ADF Mobile




                                                                 17
Enterprise Hybrid App Needs Middleware



                                     WebCenter
                                      Content



                   WebLogic          WebCenter
                                      Portal



                                     Enterprise
                                       Apps

                                                  18
Four “Flavors” of ADF Mobile


  Declarative XML components
   • ADF Mobile (AMX), similar to JSF
   • Can use expression language, data controls, and binding layer
  Remote URL
   • Similar to an iFrame with authentication
  Local HTML/CSS/JS files on device
   • Basically PhoneGap 1.0
   • Common native functions exposed via JavaScript
      • Camera, video, location services
  Native
   • Undocumented “hooks” to integrate custom code (like bar code)
   • Not fully baked yet: custom native plugins require workarounds



                                                                      19
Integrating Content


  Mobile Web
   • CORS or JSON-P direct to WebCenter Content
   • jQuery $.post() to simplified JSP that connects via RIDC


  Hybrid ADF App
   • Create a WebService Data Control (for XML)
      • Set endpoints in the connections.xml file
      • Call with RestServiceAdapter
   • Create a POJO Data Control for (JSON)
      • Use URLConnection object, or a custom ReST/JSON library


  Hybrid jQuery/Cordova App
   • Use jQuery $.post() method


                                                                  20
ADF Mobile WebService Data Control



 RestServiceAdapter rsa = Model.createRestServiceAdapter();
 rsa.clearRequestProperties();
 rsa.setConnectionName("RestServerEndpoint");
 rsa.setRequestType(RestServiceAdapter.REQUEST_TYPE_POST);
 rsa.setRequestURI("/path/to/my/restful/endpoint");
 String postData = "<msg>my data to send</msg>";
 String response = restServiceAdapter.send(postData);
 // parse the XML response




                                                              21
Integrating Portal


  WebCenter Spaces
    • Has its own JSON API


  WebCenter Business Mashups
    • Part of WebCenter PORTAL
    • Can use SQL or Web Services as data sources
    • Turns them into REST-ful JSON or XML endpoints
    • Good middleware wrapper for any back-end system
       • EBS, Siebel, PeopleSoft, even WebCenter Content
    • Parameter binding for dynamic queries / services




                                                           22
WebCenter Spaces Data Sources




                                23
Recommendations


  Think strategically, act tactically!
  HTML5 is the future of the web
    • Your team MUST learn it anyway
  HTML5 does 90% of what you want on mobile
    • Use mobile as a reason to begin HTML5 adoption
  If not enough, use ADF Mobile
    • Deploy existing business components as web services
    • Consume via Business Mashups or custom middleware
  Mobile web or mobile app?
    • Users prefer mobile web, unless data entry or graphics are key




                                                                       24
Tips for Hybrid Apps


  Apple store is biased towards native apps
   • It seems like a good idea to load all of your images/assets from a server
   • Apple considers that an attempt to get an “evil” app certified
   • Bundle most of the UI with the app


  ADF Mobile works better with ReST/XML
   • No native support for ReST/JSON in current release


  Migrating an existing ADF application?
   • Do not call existing Model objects directly from ADF Mobile!
   • Turn your ADF Model layer into a web service layer




                                                                                 25
Tips for Mobile Web


  ADF: create separate View for mobile browsers
   • Don’t just slim the same UI down
   • Think about user experience, especially data entry
  Alternate mobile web toolkits
   • jQuery Mobile, jqTouch, Sencha Touch
   • Sencha Touch, EXTJS, Zepto
  weinre (WEb INspector REmote)
   • UNBELIEVABLY cool remote HTML5 debugger
  modernizr
   • Feature detection library for HTML5 and CSS
  html5shiv
   • add some HTML5 support to older browsers


                                                          26
Useful Links


  Download ADF Mobile
   • http://www.oracle.com/technetwork/developer-tools/adf-
     mobile/downloads/index.html
   • http://docs.oracle.com/cd/E18941_01/tutorials/MobileTutorial/jdtut_11r2_54
     _1.html


  ADF Mobile References
   • http://jdevadf.oracle.com/amx/
   • http://docs.oracle.com/cd/E35521_01/apirefs.111230/e27204/toc.htm
   • http://docs.oracle.com/cd/E35521_01/apirefs.111230/e26230/toc.htm


  JSON-P/CORS/jQuery support for WebCenter Content
   • https://bezzotech.com/support/attachments/download/155/CrossDomainJs
     on-11g.zip

                                                                                  27
Questions?


  My Company: http://bezzotech.com

  My Blog: http://bexhuff.com

  My Self: bex@bezzotech.com




                                      28

More Related Content

What's hot

Switching to Oracle Document Cloud
Switching to Oracle Document CloudSwitching to Oracle Document Cloud
Switching to Oracle Document CloudBrian Huff
 
Creating and Maintaining An Internationalized Website
Creating and Maintaining An Internationalized WebsiteCreating and Maintaining An Internationalized Website
Creating and Maintaining An Internationalized WebsiteBrian Huff
 
Oracle UCM Implementation Patterns
Oracle UCM Implementation PatternsOracle UCM Implementation Patterns
Oracle UCM Implementation PatternsBrian Huff
 
Top 10 Ways To Integrate With Oracle Enterprise Content Management (ECM)
Top 10 Ways To Integrate With Oracle Enterprise Content Management (ECM)Top 10 Ways To Integrate With Oracle Enterprise Content Management (ECM)
Top 10 Ways To Integrate With Oracle Enterprise Content Management (ECM)Brian Huff
 
The Mobile Web Revealed For The Java Developer
The Mobile Web Revealed For The Java DeveloperThe Mobile Web Revealed For The Java Developer
The Mobile Web Revealed For The Java Developerbalunasj
 
PLAT-17 Alfresco iOS Mobile Application Details and Design
PLAT-17 Alfresco iOS Mobile Application Details and DesignPLAT-17 Alfresco iOS Mobile Application Details and Design
PLAT-17 Alfresco iOS Mobile Application Details and DesignAlfresco Software
 
Alfresco iOS Mobile Application In Depth Details and Design
Alfresco iOS Mobile Application In Depth Details and DesignAlfresco iOS Mobile Application In Depth Details and Design
Alfresco iOS Mobile Application In Depth Details and DesignAlfresco Software
 
A Succesful WebCenter Upgrade: What You Need to Know
A Succesful WebCenter Upgrade: What You Need to KnowA Succesful WebCenter Upgrade: What You Need to Know
A Succesful WebCenter Upgrade: What You Need to KnowFishbowl Solutions
 
PLAT-18 Alfresco iOS Mobile Application Details and Design
PLAT-18 Alfresco iOS Mobile Application Details and DesignPLAT-18 Alfresco iOS Mobile Application Details and Design
PLAT-18 Alfresco iOS Mobile Application Details and DesignAlfresco Software
 
WebCenter Content 11g Upgrade Webinar - March 2013
WebCenter Content 11g Upgrade Webinar - March 2013WebCenter Content 11g Upgrade Webinar - March 2013
WebCenter Content 11g Upgrade Webinar - March 2013Fishbowl Solutions
 
Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app Ivano Malavolta
 
CM WebClient CA Expo Mannheim Germany
CM WebClient CA Expo Mannheim Germany CM WebClient CA Expo Mannheim Germany
CM WebClient CA Expo Mannheim Germany CM First Group
 
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...Nicole Szigeti
 
CM WebClient for CA Plex
CM WebClient for CA PlexCM WebClient for CA Plex
CM WebClient for CA PlexCM First Group
 
Losing the Document Battle? Alfresco, Drupal Combine for Solution
Losing the Document Battle? Alfresco, Drupal Combine for SolutionLosing the Document Battle? Alfresco, Drupal Combine for Solution
Losing the Document Battle? Alfresco, Drupal Combine for SolutionAcquia
 
Real-world Dojo Mobile
Real-world Dojo MobileReal-world Dojo Mobile
Real-world Dojo MobileAndrew Ferrier
 
Developing Apps with CA Plex + CM WebClient
Developing Apps with CA Plex + CM WebClientDeveloping Apps with CA Plex + CM WebClient
Developing Apps with CA Plex + CM WebClientCM First Group
 
Alfresco mobile webinar 11 1-11
Alfresco mobile webinar 11 1-11Alfresco mobile webinar 11 1-11
Alfresco mobile webinar 11 1-11Zia Consulting
 
SPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint BeastSPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint BeastMark Rackley
 

What's hot (20)

Switching to Oracle Document Cloud
Switching to Oracle Document CloudSwitching to Oracle Document Cloud
Switching to Oracle Document Cloud
 
Creating and Maintaining An Internationalized Website
Creating and Maintaining An Internationalized WebsiteCreating and Maintaining An Internationalized Website
Creating and Maintaining An Internationalized Website
 
Oracle UCM Implementation Patterns
Oracle UCM Implementation PatternsOracle UCM Implementation Patterns
Oracle UCM Implementation Patterns
 
Top 10 Ways To Integrate With Oracle Enterprise Content Management (ECM)
Top 10 Ways To Integrate With Oracle Enterprise Content Management (ECM)Top 10 Ways To Integrate With Oracle Enterprise Content Management (ECM)
Top 10 Ways To Integrate With Oracle Enterprise Content Management (ECM)
 
The Mobile Web Revealed For The Java Developer
The Mobile Web Revealed For The Java DeveloperThe Mobile Web Revealed For The Java Developer
The Mobile Web Revealed For The Java Developer
 
PLAT-17 Alfresco iOS Mobile Application Details and Design
PLAT-17 Alfresco iOS Mobile Application Details and DesignPLAT-17 Alfresco iOS Mobile Application Details and Design
PLAT-17 Alfresco iOS Mobile Application Details and Design
 
Alfresco iOS Mobile Application In Depth Details and Design
Alfresco iOS Mobile Application In Depth Details and DesignAlfresco iOS Mobile Application In Depth Details and Design
Alfresco iOS Mobile Application In Depth Details and Design
 
A Succesful WebCenter Upgrade: What You Need to Know
A Succesful WebCenter Upgrade: What You Need to KnowA Succesful WebCenter Upgrade: What You Need to Know
A Succesful WebCenter Upgrade: What You Need to Know
 
PLAT-18 Alfresco iOS Mobile Application Details and Design
PLAT-18 Alfresco iOS Mobile Application Details and DesignPLAT-18 Alfresco iOS Mobile Application Details and Design
PLAT-18 Alfresco iOS Mobile Application Details and Design
 
WebCenter Content 11g Upgrade Webinar - March 2013
WebCenter Content 11g Upgrade Webinar - March 2013WebCenter Content 11g Upgrade Webinar - March 2013
WebCenter Content 11g Upgrade Webinar - March 2013
 
Web works presso
Web works pressoWeb works presso
Web works presso
 
Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app Anatomy of an HTML 5 mobile web app
Anatomy of an HTML 5 mobile web app
 
CM WebClient CA Expo Mannheim Germany
CM WebClient CA Expo Mannheim Germany CM WebClient CA Expo Mannheim Germany
CM WebClient CA Expo Mannheim Germany
 
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
Alfresco Coding mit dem Alfresco SDK (auf Englisch) - Julien Bruinaud, Techni...
 
CM WebClient for CA Plex
CM WebClient for CA PlexCM WebClient for CA Plex
CM WebClient for CA Plex
 
Losing the Document Battle? Alfresco, Drupal Combine for Solution
Losing the Document Battle? Alfresco, Drupal Combine for SolutionLosing the Document Battle? Alfresco, Drupal Combine for Solution
Losing the Document Battle? Alfresco, Drupal Combine for Solution
 
Real-world Dojo Mobile
Real-world Dojo MobileReal-world Dojo Mobile
Real-world Dojo Mobile
 
Developing Apps with CA Plex + CM WebClient
Developing Apps with CA Plex + CM WebClientDeveloping Apps with CA Plex + CM WebClient
Developing Apps with CA Plex + CM WebClient
 
Alfresco mobile webinar 11 1-11
Alfresco mobile webinar 11 1-11Alfresco mobile webinar 11 1-11
Alfresco mobile webinar 11 1-11
 
SPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint BeastSPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint Beast
 

Viewers also liked

Idoc script beginner guide
Idoc script beginner guide Idoc script beginner guide
Idoc script beginner guide Vinay Kumar
 
Top 10 Web Security Vulnerabilities (OWASP Top 10)
Top 10 Web Security Vulnerabilities (OWASP Top 10)Top 10 Web Security Vulnerabilities (OWASP Top 10)
Top 10 Web Security Vulnerabilities (OWASP Top 10)Brian Huff
 
Java Deserialization Vulnerabilities - The Forgotten Bug Class (RuhrSec Edition)
Java Deserialization Vulnerabilities - The Forgotten Bug Class (RuhrSec Edition)Java Deserialization Vulnerabilities - The Forgotten Bug Class (RuhrSec Edition)
Java Deserialization Vulnerabilities - The Forgotten Bug Class (RuhrSec Edition)CODE WHITE GmbH
 
Oracle Webcenter Suite Overview
Oracle Webcenter Suite OverviewOracle Webcenter Suite Overview
Oracle Webcenter Suite OverviewEslam Hafez
 
Rapid process automation with oracle process cloud service
Rapid process automation with oracle process cloud serviceRapid process automation with oracle process cloud service
Rapid process automation with oracle process cloud serviceHeba Fouad
 
Oracle Document Cloud Service
Oracle Document Cloud ServiceOracle Document Cloud Service
Oracle Document Cloud ServiceArush Jain
 
What is Digital Signage ?
What is Digital Signage ?What is Digital Signage ?
What is Digital Signage ?seb451
 
Twitter for Events - amiando Social Media Study
Twitter for Events - amiando Social Media StudyTwitter for Events - amiando Social Media Study
Twitter for Events - amiando Social Media StudyXING EVENTS
 
Chrisiane Kubrick über Stanley
Chrisiane Kubrick über Stanley Chrisiane Kubrick über Stanley
Chrisiane Kubrick über Stanley Nina Scheu
 
28 a dupla ceifa da terra. apoc. 14.14-20
28   a dupla ceifa da terra. apoc. 14.14-2028   a dupla ceifa da terra. apoc. 14.14-20
28 a dupla ceifa da terra. apoc. 14.14-20Diego Fortunatto
 
Atravesando fronteras: los programas de promoción a la traducción desde la Bi...
Atravesando fronteras: los programas de promoción a la traducción desde la Bi...Atravesando fronteras: los programas de promoción a la traducción desde la Bi...
Atravesando fronteras: los programas de promoción a la traducción desde la Bi...GoetheMadrid_Bibliothek
 

Viewers also liked (18)

Idoc script beginner guide
Idoc script beginner guide Idoc script beginner guide
Idoc script beginner guide
 
Top 10 Web Security Vulnerabilities (OWASP Top 10)
Top 10 Web Security Vulnerabilities (OWASP Top 10)Top 10 Web Security Vulnerabilities (OWASP Top 10)
Top 10 Web Security Vulnerabilities (OWASP Top 10)
 
Java Deserialization Vulnerabilities - The Forgotten Bug Class (RuhrSec Edition)
Java Deserialization Vulnerabilities - The Forgotten Bug Class (RuhrSec Edition)Java Deserialization Vulnerabilities - The Forgotten Bug Class (RuhrSec Edition)
Java Deserialization Vulnerabilities - The Forgotten Bug Class (RuhrSec Edition)
 
Oracle Webcenter Suite Overview
Oracle Webcenter Suite OverviewOracle Webcenter Suite Overview
Oracle Webcenter Suite Overview
 
Rapid process automation with oracle process cloud service
Rapid process automation with oracle process cloud serviceRapid process automation with oracle process cloud service
Rapid process automation with oracle process cloud service
 
Oracle Document Cloud Service
Oracle Document Cloud ServiceOracle Document Cloud Service
Oracle Document Cloud Service
 
flyer-BDPAConnect Virtual Career Fair
flyer-BDPAConnect Virtual Career Fairflyer-BDPAConnect Virtual Career Fair
flyer-BDPAConnect Virtual Career Fair
 
Top Companies for Blacks in Technology `
Top Companies for Blacks in Technology `Top Companies for Blacks in Technology `
Top Companies for Blacks in Technology `
 
What is Digital Signage ?
What is Digital Signage ?What is Digital Signage ?
What is Digital Signage ?
 
Python Metaclasses
Python MetaclassesPython Metaclasses
Python Metaclasses
 
A spectos tecnicos
A spectos tecnicosA spectos tecnicos
A spectos tecnicos
 
Twitter for Events - amiando Social Media Study
Twitter for Events - amiando Social Media StudyTwitter for Events - amiando Social Media Study
Twitter for Events - amiando Social Media Study
 
Chrisiane Kubrick über Stanley
Chrisiane Kubrick über Stanley Chrisiane Kubrick über Stanley
Chrisiane Kubrick über Stanley
 
28 a dupla ceifa da terra. apoc. 14.14-20
28   a dupla ceifa da terra. apoc. 14.14-2028   a dupla ceifa da terra. apoc. 14.14-20
28 a dupla ceifa da terra. apoc. 14.14-20
 
MESSAGES
  MESSAGES   MESSAGES
MESSAGES
 
Jalan menuju iman
Jalan menuju imanJalan menuju iman
Jalan menuju iman
 
Atravesando fronteras: los programas de promoción a la traducción desde la Bi...
Atravesando fronteras: los programas de promoción a la traducción desde la Bi...Atravesando fronteras: los programas de promoción a la traducción desde la Bi...
Atravesando fronteras: los programas de promoción a la traducción desde la Bi...
 
Thuban talleres karma
Thuban talleres karmaThuban talleres karma
Thuban talleres karma
 

Similar to Integrating ADF Mobile with WebCenter

Hybrid mobile application with Ionic
Hybrid mobile application with IonicHybrid mobile application with Ionic
Hybrid mobile application with IonicMaulik Bamania
 
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicHybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicErmias Bayu
 
HTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyHTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyDMI
 
Cross Platform Mobile Development
Cross Platform Mobile DevelopmentCross Platform Mobile Development
Cross Platform Mobile DevelopmentManesh Lad
 
Developing Downloadable Mobile Apps Using HTML5 and PhoneGap
Developing Downloadable Mobile Apps Using HTML5 and PhoneGapDeveloping Downloadable Mobile Apps Using HTML5 and PhoneGap
Developing Downloadable Mobile Apps Using HTML5 and PhoneGapWorklight
 
appMobi HTML5 Gaming
appMobi HTML5 GamingappMobi HTML5 Gaming
appMobi HTML5 GamingAndrew Smith
 
Synapse india reviews on cross plateform mobile apps development
Synapse india reviews on cross plateform mobile apps developmentSynapse india reviews on cross plateform mobile apps development
Synapse india reviews on cross plateform mobile apps developmentsaritasingh19866
 
Development Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsDevelopment Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsRomin Irani
 
Synapse india reviews on mobile application development
Synapse india reviews on mobile application developmentSynapse india reviews on mobile application development
Synapse india reviews on mobile application developmentsaritasingh19866
 
Drupalcamp armedia phonegap_oct2012_print
Drupalcamp armedia phonegap_oct2012_printDrupalcamp armedia phonegap_oct2012_print
Drupalcamp armedia phonegap_oct2012_printDrupalcampAtlanta2012
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?Reto Meier
 
Understanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile ArchitecturesUnderstanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile ArchitecturesSalesforce Developers
 
12 Frameworks for Mobile Hybrid Apps
12 Frameworks for Mobile Hybrid Apps12 Frameworks for Mobile Hybrid Apps
12 Frameworks for Mobile Hybrid AppsFilipe Lima
 
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile designDreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile designDee Sadler
 
Michael Slater Mobile Opportunity
Michael Slater Mobile OpportunityMichael Slater Mobile Opportunity
Michael Slater Mobile OpportunityNorthBayWeb
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Nuxeo
 
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark LittleKeynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark LittleJAX London
 
Developing a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDeveloping a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDamir Beylkhanov
 
PhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the EnterprisePhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the EnterpriseBryce Curtis
 

Similar to Integrating ADF Mobile with WebCenter (20)

Hybrid mobile application with Ionic
Hybrid mobile application with IonicHybrid mobile application with Ionic
Hybrid mobile application with Ionic
 
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicHybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
 
HTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyHTML5 for Mobile - When and Why
HTML5 for Mobile - When and Why
 
Cross Platform Mobile Development
Cross Platform Mobile DevelopmentCross Platform Mobile Development
Cross Platform Mobile Development
 
Developing Downloadable Mobile Apps Using HTML5 and PhoneGap
Developing Downloadable Mobile Apps Using HTML5 and PhoneGapDeveloping Downloadable Mobile Apps Using HTML5 and PhoneGap
Developing Downloadable Mobile Apps Using HTML5 and PhoneGap
 
appMobi HTML5 Gaming
appMobi HTML5 GamingappMobi HTML5 Gaming
appMobi HTML5 Gaming
 
Synapse india reviews on cross plateform mobile apps development
Synapse india reviews on cross plateform mobile apps developmentSynapse india reviews on cross plateform mobile apps development
Synapse india reviews on cross plateform mobile apps development
 
Development Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElementsDevelopment Workshop on ET1, Android and Motorola RhoElements
Development Workshop on ET1, Android and Motorola RhoElements
 
Synapse india reviews on mobile application development
Synapse india reviews on mobile application developmentSynapse india reviews on mobile application development
Synapse india reviews on mobile application development
 
Drupalcamp armedia phonegap_oct2012_print
Drupalcamp armedia phonegap_oct2012_printDrupalcamp armedia phonegap_oct2012_print
Drupalcamp armedia phonegap_oct2012_print
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?
 
Understanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile ArchitecturesUnderstanding Native, Hybrid, and Web Mobile Architectures
Understanding Native, Hybrid, and Web Mobile Architectures
 
12 Frameworks for Mobile Hybrid Apps
12 Frameworks for Mobile Hybrid Apps12 Frameworks for Mobile Hybrid Apps
12 Frameworks for Mobile Hybrid Apps
 
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile designDreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile design
 
Michael Slater Mobile Opportunity
Michael Slater Mobile OpportunityMichael Slater Mobile Opportunity
Michael Slater Mobile Opportunity
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark LittleKeynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little
 
Developing a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&CordovaDeveloping a native mobile apps using Ionic&Cordova
Developing a native mobile apps using Ionic&Cordova
 
Hybrid mobile apps
Hybrid mobile appsHybrid mobile apps
Hybrid mobile apps
 
PhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the EnterprisePhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the Enterprise
 

More from Brian Huff

AP Automation for EBS or PeopleSoft with Oracle WebCenter
AP Automation for EBS or PeopleSoft with Oracle WebCenterAP Automation for EBS or PeopleSoft with Oracle WebCenter
AP Automation for EBS or PeopleSoft with Oracle WebCenterBrian Huff
 
OWASP Top 10 Security Vulnerabilities, and Securing them with Oracle ADF
OWASP Top 10 Security Vulnerabilities, and Securing them with Oracle ADFOWASP Top 10 Security Vulnerabilities, and Securing them with Oracle ADF
OWASP Top 10 Security Vulnerabilities, and Securing them with Oracle ADFBrian Huff
 
The Top 10 Things Oracle UCM Users Need To Know About WebLogic
The Top 10 Things Oracle UCM Users Need To Know About WebLogicThe Top 10 Things Oracle UCM Users Need To Know About WebLogic
The Top 10 Things Oracle UCM Users Need To Know About WebLogicBrian Huff
 
Oracle UCM Security: Challenges and Best Practices
Oracle UCM Security: Challenges and Best PracticesOracle UCM Security: Challenges and Best Practices
Oracle UCM Security: Challenges and Best PracticesBrian Huff
 
Oracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance TuningOracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance TuningBrian Huff
 
Real World Examples of Succesful Enterprise Content Management Strategies
Real World Examples of Succesful Enterprise Content Management StrategiesReal World Examples of Succesful Enterprise Content Management Strategies
Real World Examples of Succesful Enterprise Content Management StrategiesBrian Huff
 
A Pragmatic Strategy for Oracle Enterprise Content Management
A Pragmatic Strategy for Oracle Enterprise Content ManagementA Pragmatic Strategy for Oracle Enterprise Content Management
A Pragmatic Strategy for Oracle Enterprise Content ManagementBrian Huff
 
A Pragmatic Strategy for Oracle Enterprise Content Management (ECM)
A Pragmatic Strategy for Oracle Enterprise Content Management (ECM)A Pragmatic Strategy for Oracle Enterprise Content Management (ECM)
A Pragmatic Strategy for Oracle Enterprise Content Management (ECM)Brian Huff
 
Enterprise 2.0: What it is, and how you'll fail!
Enterprise 2.0: What it is, and how you'll fail!Enterprise 2.0: What it is, and how you'll fail!
Enterprise 2.0: What it is, and how you'll fail!Brian Huff
 

More from Brian Huff (9)

AP Automation for EBS or PeopleSoft with Oracle WebCenter
AP Automation for EBS or PeopleSoft with Oracle WebCenterAP Automation for EBS or PeopleSoft with Oracle WebCenter
AP Automation for EBS or PeopleSoft with Oracle WebCenter
 
OWASP Top 10 Security Vulnerabilities, and Securing them with Oracle ADF
OWASP Top 10 Security Vulnerabilities, and Securing them with Oracle ADFOWASP Top 10 Security Vulnerabilities, and Securing them with Oracle ADF
OWASP Top 10 Security Vulnerabilities, and Securing them with Oracle ADF
 
The Top 10 Things Oracle UCM Users Need To Know About WebLogic
The Top 10 Things Oracle UCM Users Need To Know About WebLogicThe Top 10 Things Oracle UCM Users Need To Know About WebLogic
The Top 10 Things Oracle UCM Users Need To Know About WebLogic
 
Oracle UCM Security: Challenges and Best Practices
Oracle UCM Security: Challenges and Best PracticesOracle UCM Security: Challenges and Best Practices
Oracle UCM Security: Challenges and Best Practices
 
Oracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance TuningOracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance Tuning
 
Real World Examples of Succesful Enterprise Content Management Strategies
Real World Examples of Succesful Enterprise Content Management StrategiesReal World Examples of Succesful Enterprise Content Management Strategies
Real World Examples of Succesful Enterprise Content Management Strategies
 
A Pragmatic Strategy for Oracle Enterprise Content Management
A Pragmatic Strategy for Oracle Enterprise Content ManagementA Pragmatic Strategy for Oracle Enterprise Content Management
A Pragmatic Strategy for Oracle Enterprise Content Management
 
A Pragmatic Strategy for Oracle Enterprise Content Management (ECM)
A Pragmatic Strategy for Oracle Enterprise Content Management (ECM)A Pragmatic Strategy for Oracle Enterprise Content Management (ECM)
A Pragmatic Strategy for Oracle Enterprise Content Management (ECM)
 
Enterprise 2.0: What it is, and how you'll fail!
Enterprise 2.0: What it is, and how you'll fail!Enterprise 2.0: What it is, and how you'll fail!
Enterprise 2.0: What it is, and how you'll fail!
 

Recently uploaded

New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 

Recently uploaded (20)

New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 

Integrating ADF Mobile with WebCenter

  • 1. Integrating ADF Mobile with WebCenter Brian “Bex” Huff Chief Software Architect Oracle ACE Director
  • 2. Agenda  History of the mobile web  What’s your Mobile Strategy?  Crash Course in ADF  Native, ADF Mobile, and HTML5  Integrating Content and Web Services  Recommendations  Tips and Traps 2
  • 3. History of Mobile Apps  Native • All mobile devices have an API for native programming • Used mainly for developers working on one specific platform  Wireless Application Protocol (1997) • Slimmed-down version of HTML for tiny mobile screens • Relatively unused  BlackBerry • Email on my mobile phone! Yay!!! I mean... Boooooo!  iPhone • The first true “smartphone” • Native language: Objective-C  HTML5 • Supported on all mobile smartphones • Supported on some desktops 3
  • 4. Mobile Challenges  Richer context • Location, acceleration, camera, video • Offline database storage, messages and notifications  Design techniques • Objective-C, Java, C#, Native libraries • Web services, JSON, HTML5, JavaScript  New devices and operating systems every month! • iPhone, iPod Touch, iPad, Kindle, Nook • iOS, Blackberry, WebOS, Windows Mobile • Android has already “forked” three times! 4
  • 5. Mobile OS Market Share  2013 Q1 Sales by OS (ABI Research / CNN) 5
  • 7. Words of Warning!  Heed the lessons from the dot com bust • Don’t rush to mobile like people rushed to the web • You’ll spend too much and get too little  Your web site should be a natural extension of your business  Your mobile app should be a natural extension of your business 7
  • 8. Words of Wisdom... "Ten mobile apps is all I need" -- David Heinemeier Hansson, creator of Ruby on Rails "If we only bought what we needed, the economy would collapse" -- Paco Underhill 8
  • 9. Three Main Mobile Strategies  Mobile application • Create native mobile application (iOS, Android, etc.)  Mobile website • Your current website data, optimized for a mobile browser • Optimized content and interactions  Hybrid applications • Part application, part website • Built with common web technologies (HTML5/JavaScript) • Load native libraries only as needed 9
  • 10. Mobile Application  “Native Application” strategy • Initially the only way to make mobile apps  Are smart phone app sales your main moneymaker? • $15 billion market in 2013  Probably not what you need! 10
  • 11. Mobile Web  The HTML5 Strategy • Use the power of HTML5 • Animation, offline storage, location services, etc.  Supported on most mobile browsers  Incredibly powerful  Preferred by most users, according to Adobe • Exceptions: social, music, and games 11
  • 12. Users Prefer Mobile Web To Mobile Apps 12
  • 13. Hybrid Application: Web-Based Native Apps  Three common frameworks • Titanium, PhoneGap, ADF Mobile  ADF Mobile • Released in November, 2012  ADF Mobile is based partly on PhoneGap • Allow you to create a “native” application using only HTML5 and JavaScript • New component-driven framework: ADF Mobile AMX files 13
  • 14. History of ADF Mobile  ADF Mobile Browser • JSF skins optimized for older mobile phones • Open sourced as Trinidad skins • Probably not what you need  ADF ViewController with mobile skin • Slimmed down View, optimized for mobile • Supports gestures  ADF Mobile • Next-Generation hybrid mobile toolkit 14
  • 15. Crash Course in ADF  ADF is a Model, View, Controller framework • Support included in JDeveloper and Eclipse • Tight DataBinding layer ties all 3 together  Model is typically ADF Business Components • POJOs, Web Services, Struts, and EJB also supported  View is typically ADF Faces (declarative framework) • JSP, JSF, ADF Mobile (AMX), Swing also supported • AMX very similar to JSF: declarative component based framework  Controller is typically ADF Task Flows • JSF Page Flows also supported, but less powerful 15
  • 17. Integrating Hybrid Apps with your Enterprise  Best practice to have middleware between app and enterprise  What about existing SOAP/JSON APIs? • WebCenter Spaces? WebCenter Content?  Back-end APIs can change frequently • WebCenter Content is mostly stable, but no guarantee • Existing APIs may be too “chatty” • Updating Hybrid Apps is a pain that should be avoided • Have a slimmed-down API • ReST-ful XML or JSON good choices • JSON requires a bit more work in ADF Mobile 17
  • 18. Enterprise Hybrid App Needs Middleware WebCenter Content WebLogic WebCenter Portal Enterprise Apps 18
  • 19. Four “Flavors” of ADF Mobile  Declarative XML components • ADF Mobile (AMX), similar to JSF • Can use expression language, data controls, and binding layer  Remote URL • Similar to an iFrame with authentication  Local HTML/CSS/JS files on device • Basically PhoneGap 1.0 • Common native functions exposed via JavaScript • Camera, video, location services  Native • Undocumented “hooks” to integrate custom code (like bar code) • Not fully baked yet: custom native plugins require workarounds 19
  • 20. Integrating Content  Mobile Web • CORS or JSON-P direct to WebCenter Content • jQuery $.post() to simplified JSP that connects via RIDC  Hybrid ADF App • Create a WebService Data Control (for XML) • Set endpoints in the connections.xml file • Call with RestServiceAdapter • Create a POJO Data Control for (JSON) • Use URLConnection object, or a custom ReST/JSON library  Hybrid jQuery/Cordova App • Use jQuery $.post() method 20
  • 21. ADF Mobile WebService Data Control RestServiceAdapter rsa = Model.createRestServiceAdapter(); rsa.clearRequestProperties(); rsa.setConnectionName("RestServerEndpoint"); rsa.setRequestType(RestServiceAdapter.REQUEST_TYPE_POST); rsa.setRequestURI("/path/to/my/restful/endpoint"); String postData = "<msg>my data to send</msg>"; String response = restServiceAdapter.send(postData); // parse the XML response 21
  • 22. Integrating Portal  WebCenter Spaces • Has its own JSON API  WebCenter Business Mashups • Part of WebCenter PORTAL • Can use SQL or Web Services as data sources • Turns them into REST-ful JSON or XML endpoints • Good middleware wrapper for any back-end system • EBS, Siebel, PeopleSoft, even WebCenter Content • Parameter binding for dynamic queries / services 22
  • 23. WebCenter Spaces Data Sources 23
  • 24. Recommendations  Think strategically, act tactically!  HTML5 is the future of the web • Your team MUST learn it anyway  HTML5 does 90% of what you want on mobile • Use mobile as a reason to begin HTML5 adoption  If not enough, use ADF Mobile • Deploy existing business components as web services • Consume via Business Mashups or custom middleware  Mobile web or mobile app? • Users prefer mobile web, unless data entry or graphics are key 24
  • 25. Tips for Hybrid Apps  Apple store is biased towards native apps • It seems like a good idea to load all of your images/assets from a server • Apple considers that an attempt to get an “evil” app certified • Bundle most of the UI with the app  ADF Mobile works better with ReST/XML • No native support for ReST/JSON in current release  Migrating an existing ADF application? • Do not call existing Model objects directly from ADF Mobile! • Turn your ADF Model layer into a web service layer 25
  • 26. Tips for Mobile Web  ADF: create separate View for mobile browsers • Don’t just slim the same UI down • Think about user experience, especially data entry  Alternate mobile web toolkits • jQuery Mobile, jqTouch, Sencha Touch • Sencha Touch, EXTJS, Zepto  weinre (WEb INspector REmote) • UNBELIEVABLY cool remote HTML5 debugger  modernizr • Feature detection library for HTML5 and CSS  html5shiv • add some HTML5 support to older browsers 26
  • 27. Useful Links  Download ADF Mobile • http://www.oracle.com/technetwork/developer-tools/adf- mobile/downloads/index.html • http://docs.oracle.com/cd/E18941_01/tutorials/MobileTutorial/jdtut_11r2_54 _1.html  ADF Mobile References • http://jdevadf.oracle.com/amx/ • http://docs.oracle.com/cd/E35521_01/apirefs.111230/e27204/toc.htm • http://docs.oracle.com/cd/E35521_01/apirefs.111230/e26230/toc.htm  JSON-P/CORS/jQuery support for WebCenter Content • https://bezzotech.com/support/attachments/download/155/CrossDomainJs on-11g.zip 27
  • 28. Questions?  My Company: http://bezzotech.com  My Blog: http://bexhuff.com  My Self: bex@bezzotech.com 28