Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Oracle Fusion Development, May 2009


Published on

Details about Oracle Fusion Development

Published in: Technology, Business
  • Be the first to comment

Oracle Fusion Development, May 2009

  1. 2. The Fusion Development Platform Jaime Cid Principal Sales Consultant Fusion Middleware / Enterprise 2.0 May 2009
  2. 3. Oracle Corporation (July 2008) <ul><li>World’s largest enterprise software vendor </li></ul><ul><li>$22.4 billion revenue in FY08 </li></ul><ul><ul><li>25% total revenue growth </li></ul></ul><ul><ul><li>28% new software license growth </li></ul></ul><ul><li>300,000 global customers </li></ul><ul><li>84,000 employees </li></ul><ul><ul><li>20,000 developers </li></ul></ul><ul><ul><li>7,500 support personnel </li></ul></ul><ul><li>20,000 partners </li></ul><ul><ul><li>9,100 Independent Software Vendors </li></ul></ul><ul><li>Operating in 145 Countries </li></ul>
  3. 4. <ul><li>E-Business Suite </li></ul><ul><li>PeopleSoft Enterprise </li></ul><ul><li>Siebel </li></ul><ul><li>JD Edwards </li></ul><ul><li>Oracle Retail </li></ul><ul><li>i-Flex </li></ul><ul><li>Communications Billing </li></ul><ul><li>Utilities </li></ul><ul><li>ProfitLogic </li></ul><ul><li>G-Log </li></ul><ul><li>Agile PLM </li></ul><ul><li>Oracle GRC </li></ul><ul><li>Database </li></ul><ul><li>Real Application Clusters </li></ul><ul><li>Partitioning </li></ul><ul><li>OLAP and Data Mining </li></ul><ul><li>Security </li></ul><ul><li>Spatial </li></ul><ul><li>Oracle Lite </li></ul><ul><li>Times Ten </li></ul>Database Middleware Applications <ul><li>Development Tools </li></ul><ul><li>TP-Monitor </li></ul><ul><li>Application Server </li></ul><ul><li>Application Grids </li></ul><ul><li>Data Integration </li></ul><ul><li>SOA / Integration </li></ul><ul><li>Business Intelligence </li></ul><ul><li>Content Management </li></ul><ul><li>Identity Management </li></ul><ul><li>Enterprise 2.0 </li></ul><ul><li>Enterprise Performance Management </li></ul><ul><li>BEA </li></ul>
  4. 5. Oracle’s Fusion Strategy <ul><li>Oracle Fusion Architecture </li></ul><ul><ul><li>Blueprint for SOA-based Enterprise Solutions </li></ul></ul><ul><li>Oracle Fusion Middleware </li></ul><ul><ul><li>Technology Infrastructure for Next Gen Applications </li></ul></ul><ul><li>Oracle Fusion Applications </li></ul><ul><ul><li>Protect, Extend, Evolve through Fusion Architecture and Middleware </li></ul></ul>
  5. 6. Oracle Fusion Middleware
  6. 7. Oracle Fusion Applications <ul><li>Merge Oracle EBS, Siebel, Peoplesoft into one offering with multiple modules </li></ul><ul><li>Convergence and evolution of different Web Platforms </li></ul><ul><li>Probably one of the largest software development projects in the world </li></ul><ul><ul><li>Thousands of developers (~8,000 ) </li></ul></ul><ul><ul><li>Several years in the making </li></ul></ul>
  7. 8. What We Wanted – Business Drivers <ul><li>Cutting Edge User Interface </li></ul><ul><li>Agility </li></ul><ul><li>System Integration </li></ul><ul><li>Standards </li></ul><ul><li>Scalability, Security, Portability </li></ul><ul><li>Time to market </li></ul>
  8. 9. How We’ll Get There Java EE 5 SOA Web 2.0
  9. 10. Oracle Fusion Middleware – The Platform
  10. 11. Oracle Fusion Architecture Business Logic View Data Task Complete Assign Task Human Workflow Service BPEL Process Business Activity Monitoring User Interface ADF Faces components Business Services JSR-227 Data Binding Web Services DB Schema WebCenter Events results facts Orchestration Human interaction Policy evaluation Monitoring Rules Engine
  11. 12. The Challange <ul><li>On one side: </li></ul><ul><ul><li>JPA, EJB, AJAX, JavaScript, BPEL, SOAP, WSDL, RMI, JNDI, JDBC, O/R, HTML, DOM…. </li></ul></ul><ul><li>On the other side: </li></ul><ul><ul><li>Thousands of developers </li></ul></ul><ul><ul><li>Most don’t know these technologies </li></ul></ul><ul><ul><li>Most come from 4GL background </li></ul></ul><ul><ul><li>Expecting a visual and declarative approach </li></ul></ul><ul><ul><li>Don’t have time to learn all these new technologies </li></ul></ul><ul><ul><li>Need to focus on their specific application needs </li></ul></ul><ul><ul><li>Unified way of doing things </li></ul></ul><ul><li>How do you make it easy and approachable? </li></ul>
  12. 13. The Solution - Oracle ADF <ul><li>Development framework that simplifies development of Java EE-based Web & SOA applications </li></ul><ul><li>Abstract developers from technology complexities </li></ul><ul><ul><li>Example - UI Components abstracts from Ajax, Flash, Javascript, DOM </li></ul></ul><ul><li>Provides end-to-end infrastructure solutions… </li></ul><ul><ul><li>O/R Mapping, persistence, caching, controller, binding, UI framework </li></ul></ul><ul><li>… and an easy way to use them </li></ul><ul><ul><li>Visual editors, Property editors, dialogs etc… </li></ul></ul>
  13. 14. Try Yourself <ul><li>ADF Online Interactive Demo: </li></ul><ul><ul><li>http :// bit . ly / adfdemo </li></ul></ul><ul><li>Data Visualization Tools Demo: </li></ul><ul><ul><li>http :// bit . ly / adfdvt </li></ul></ul>
  14. 15. <Insert Picture Here> Fusion User Interface
  15. 16. Compelling Features of Fusion for UIs <ul><li>ADF Faces Rich Client Components </li></ul><ul><ul><li>Large skin-able component set for JSF </li></ul></ul><ul><li>ADF DVT Components </li></ul><ul><ul><li>Charts, Gant, Geo-map, Gauges </li></ul></ul><ul><ul><li>Also JSF components – no new skills required </li></ul></ul><ul><li>Active Data </li></ul><ul><ul><li>Push to the client </li></ul></ul><ul><li>ADF Task Flows </li></ul><ul><ul><li>Reusable processes and fragments </li></ul></ul><ul><li>WebCenter </li></ul><ul><ul><li>Documents, Search, Mash-ups, Presence, Discussions, 2.0, … </li></ul></ul><ul><li>Single skill set </li></ul><ul><ul><li>Mobile, GIS, BI dashboards, data entry </li></ul></ul>
  16. 17. From These
  17. 18. To This
  18. 19. With ADF and other components like Oracle Web Center Framework (ADF based) Integrated, standards based, user interaction suite Notifications Email Discussions & Presence Documents Search Business Intelligence Apps Wiki / Blog Social Networks Custom Partner Legacy Other Apps…
  19. 21. Composer : Application Customization
  20. 22. Example Fusion Applications UI’s
  21. 23. Fusion Applications HCM
  22. 24. Fusion Applications Projects
  23. 25. Fusion Applications Procurement
  24. 26. Oracle Enterprise Manager 11g Fusion Middleware Control
  25. 27. <Insert Picture Here> Oracle JDeveloper
  26. 28. Oracle JDeveloper Goals <ul><li>Development tool for Fusion Applications </li></ul><ul><ul><li>Oracle has ~8,000 applications developers </li></ul></ul><ul><ul><li>They must be productive </li></ul></ul><ul><li>Design time for Fusion Middleware </li></ul><ul><ul><li>Integrated development experience </li></ul></ul><ul><ul><li>Take advantage of special features </li></ul></ul><ul><li>Simplify Transition to Java </li></ul><ul><ul><li>Addressing the enterprise developer in addition to the Java experts </li></ul></ul>
  27. 29. Common Architecture Fusion Applications ADF J2EE App Server Metadata Services (MDS) WebCenter SOA Mobile JDeveloper JDeveloper Fusion Applications Enterprise Manager
  28. 30. <ul><li>Standards-based IDE </li></ul><ul><li>Single stack for all SOA development </li></ul><ul><ul><li>J2EE, WS, SCA & XML Development </li></ul></ul><ul><ul><li>WebCenter, BPEL, BI & Wireless Development </li></ul></ul><ul><ul><li>Service-Oriented Development </li></ul></ul><ul><ul><li>Event-Driven Development </li></ul></ul><ul><li>Productivity With Choice </li></ul><ul><ul><li>Supports choice of technologies </li></ul></ul><ul><ul><li>Supports choice of development styles </li></ul></ul><ul><ul><li>Supports choice of Application Servers & Databases </li></ul></ul><ul><li>Highly customizable & extensible </li></ul>Fusion Development Tool Oracle JDeveloper Task Flow Modeling Business Process Modeling Data Transformation Page Design Routing Rules & Events
  29. 31. Visual and Declarative Development <ul><li>WYSIWYG Editors </li></ul><ul><ul><li>JSF, JSP, HTML, Swing </li></ul></ul><ul><li>Visual Page Flow </li></ul><ul><ul><li>Task Flow, JSF, Struts </li></ul></ul><ul><li>Modelers </li></ul><ul><ul><li>DB and popular UML modelers </li></ul></ul><ul><li>Visual Editors </li></ul><ul><ul><li>XML Schema, XSLT, WSDL </li></ul></ul><ul><li>Process Flow </li></ul><ul><ul><li>BPEL Editor </li></ul></ul><ul><ul><li>Mediator </li></ul></ul>
  30. 32. Choice of Development Styles Visual Declarative Code
  31. 33. <Insert Picture Here> Fusion Architecture
  32. 34. What is an Application?
  33. 35. “Traditional” Oracle Development… Business Logic View Data User Interface UIX /JSP Business Services ADF BC / EJB DB Schema Web Services Forms / Reports Application Express
  34. 36. “Traditional”- Build Your Own… <ul><li>Batch processes </li></ul><ul><ul><li>PL/SQL, Perl, REXX, csh, RPT, etc. etc. </li></ul></ul><ul><li>Rules engine </li></ul><ul><li>Workflow </li></ul><ul><li>Data loaders </li></ul><ul><li>Data Transformers </li></ul><ul><li>Dashboards </li></ul><ul><li>Security </li></ul><ul><li>The database is the hub </li></ul>
  35. 37. The Fusion Blueprint Business Logic View Data Rules Engine Assign Task Task Complete Human Workflow Service Mediator /BPEL Process results facts Business Activity Monitoring User Interface ADF Faces components Business Services ADF Business Components Data Binding SDO Services Database Schema Events Orchestration Human interaction Policy evaluation Monitoring
  36. 38. Common Development Framework <ul><li>Oracle Application Development Framework (ADF) </li></ul><ul><li>Increase productivity & ease-of-use </li></ul><ul><ul><li>Visual and declarative development </li></ul></ul><ul><ul><li>Takes care of the “plumbing” code </li></ul></ul><ul><ul><li>Implements best practices </li></ul></ul><ul><li>Promote service oriented development </li></ul><ul><ul><li>Re-usable business services </li></ul></ul><ul><ul><li>Composite applications development </li></ul></ul><ul><li>Standards-based </li></ul><ul><ul><li>Choice of technology, deployment platform </li></ul></ul><ul><li>Common framework for the platform </li></ul>
  37. 39. Fusion Development Exposed Portlets Business Services User Interface Business Processes Relational Data Packaged Apps XML Data
  38. 40. Fusion / ADF Architecture Business Services Data Services Model Controller View Desktop Browser-Based ADF Bindings (JSR 227) JSF Struts JSF/ADF Task Flow Office ADF Swing JSP TopLink EJB BAM ADFbc Portlets BI Essbase BPEL Web Services Java ADF Faces / DVT XML Data Legacy Data Relational Data Packaged Apps
  39. 41. ADF – Fusion Stack Business Services Data Services Model Controller View Desktop Browser-Based ADF Bindings (JSR 227) JSF Struts JSF/ADF Task Flow Office ADF Swing JSP TopLink EJB BAM ADFbc Portlets BI Essbase BPEL Web Services Java ADF Faces / DVT XML Data Legacy Data Relational Data Packaged Apps
  40. 42. <Insert Picture Here> Business Services Business Services User Interface Business Processes Exposed Portlets
  41. 43. Business Service Goals <ul><li>Bridge Object-Relational gap </li></ul><ul><li>Manage CRUD operations </li></ul><ul><ul><li>Queries/DML </li></ul></ul><ul><li>Implement business rules </li></ul><ul><ul><li>Data validation </li></ul></ul><ul><ul><li>Business logic </li></ul></ul><ul><li>Reusable </li></ul><ul><ul><li>Not only for UIs </li></ul></ul><ul><li>Standards-based </li></ul>
  42. 44. Business Service Selection Enterprise JavaBeans Web services Java classes ADF Business Components Oracle TopLink Core Java EE Frameworks <ul><li>Benefits </li></ul><ul><li>Develop with a single API </li></ul><ul><li>No extra libraries required </li></ul><ul><li>Benefits </li></ul><ul><li>Declarative development </li></ul><ul><li>Built-in design patterns </li></ul>
  43. 45. Which Service Framework? <ul><li>ADFbc is the expected default implementation for relational access </li></ul><ul><ul><li>Declarative </li></ul></ul><ul><ul><li>Customizable </li></ul></ul><ul><ul><li>Scalable </li></ul></ul><ul><li>Some exceptions for: </li></ul><ul><ul><li>High transaction grid environments </li></ul></ul><ul><ul><li>Non-relational (XML / Cubic / JMX) </li></ul></ul><ul><li>If in doubt – come and talk to us </li></ul>
  44. 46. ADF Business Components <ul><ul><li>ADF is a framework that simplifies developing Java EE business services for developers familiar with declarative development and relational databases </li></ul></ul><ul><ul><li>Provides data interaction & business logic execution </li></ul></ul><ul><ul><li>Enables declarative-style development </li></ul></ul><ul><ul><ul><li>Wizard-based and visual development </li></ul></ul></ul><ul><ul><ul><li>Implemented in metadata, not code </li></ul></ul></ul><ul><ul><li>Enables business logic development </li></ul></ul><ul><ul><ul><li>Pre-defined Java methods for common events (create, delete, row currency) </li></ul></ul></ul><ul><ul><ul><li>Declarative business rules </li></ul></ul></ul>
  45. 47. Declarative Development
  46. 48. Types of ADF Business Components CustomerEO OrderEO LineItemEO OrdVO CustVO CustomerOrder AllOrders Customer Application Module with View Object Instances View Objects and View Links Entity Objects and Associations Service Query Cache
  47. 49. <Insert Picture Here> Business Processes Business Services User Interface Business Processes Exposed Portlets
  48. 50. Business Process Development <ul><li>BPEL - standard for service integration </li></ul><ul><li>Orchestrate heterogeneous services </li></ul><ul><li>Hundreds of adapters for any back-end system </li></ul><ul><li>Visual development of business processes </li></ul><ul><li>Consistent development experience </li></ul><ul><ul><li>Same tool </li></ul></ul><ul><ul><li>Visual, drag & drop </li></ul></ul>
  49. 51. Event support across the stack <ul><li>Operations on ADF-BC objects trigger events, initiating SOA composites </li></ul><ul><li>ESB fan-out patterns </li></ul><ul><li>Etc. </li></ul>newSupplier event SOA composite createSupplier ADF page flow and BC SOA composite newSupplier event
  50. 52. Orchestrate components - SCA New order Event BPEL orchestration Business Rules Human Tasks Web services, ADFBC – SDO and adapters
  51. 53. <Insert Picture Here> User Interface Business Services User Interface Business Processes Exposed Portlets
  52. 54. We’re Not In Kansas Any More
  53. 55. JSF – The UI Framework of Choice <ul><li>Simplify Web Development </li></ul><ul><ul><li>Server side UI generation </li></ul></ul><ul><ul><li>Component based, not mark-up </li></ul></ul><ul><ul><li>Automatic event and state handling </li></ul></ul><ul><ul><li>Diverse client base, not just HTML </li></ul></ul><ul><ul><li>Designed with tooling in mind </li></ul></ul><ul><ul><li>Applicable to wide spectrum of programmer types </li></ul></ul><ul><li>A Java EE standard </li></ul>
  54. 56. ADF Faces Enhances JSF <ul><li>Over 150 types of UI components </li></ul><ul><ul><li>Trees, tabs, shuttles, etc.….. </li></ul></ul><ul><li>Rich interactive component set </li></ul><ul><ul><li>Partial page rendering (PPR) </li></ul></ul><ul><ul><li>AJAX functionality </li></ul></ul><ul><li>Value-added features </li></ul><ul><ul><li>Skinning, templating </li></ul></ul><ul><ul><li>Multiple renderers (HTML, PDA, wireless,…) </li></ul></ul><ul><ul><li>Drag and drop data binding </li></ul></ul><ul><ul><li>Accessibility </li></ul></ul><ul><ul><li>Internationalization </li></ul></ul><ul><li>Open source (Apache Trinidad) </li></ul>
  55. 57. ADF Faces Rich Client Architecture Client Side Server Side Label1 Label2 Label3 OK DOM Peer Objects Document Form Element Servlet JSF Lifecycle In Memory Tree View Root Form UI Component Renderer
  56. 58. iPhone Safari Render kit <ul><li>The Oracle ADF Mobile Browser client, however, enables developers to leverage the AJAX capabilities of the iPhone Safari browser, while maintain complete compatibility with mobile browsers that can only handle plain HTML or WAP 2.0 contents. </li></ul><ul><li>Furthermore, it helps developers create user interfaces that are optimized for iPhone screen size and mobile Web use. </li></ul>
  57. 59. ADF Faces Rich Client Components ADF Binding ADF DataControl RDBMS EJB 3.0 Web Service BPEL … Ajax Render Kit UI Component “ bindings” Object Expr. Language MODEL UI RENDERING ADF Ajax Page Lifecycle Client
  58. 60. ADF Faces Rich Client Components End User productivity <ul><li>150+ AJAX enabled JavaServer Faces components </li></ul><ul><li>Drag-and-drop framework </li></ul><ul><li>Dialog and popup framework </li></ul><ul><li>Navigation menu framework </li></ul><ul><li>Partial page rendering </li></ul><ul><li>Advanced data streaming </li></ul><ul><li>Complete JavaScript API </li></ul><ul><li>Skinning </li></ul><ul><li>Accessibility </li></ul>
  59. 61. ADF Faces Rich Client Samples
  60. 62. ADF Faces Components Common Components Layout Components Operations
  61. 63. Oracle Data Visualization Tools (DVT) <ul><li>Graph </li></ul><ul><li>Gauge </li></ul><ul><li>Geographic Map </li></ul><ul><li>Pivot Table </li></ul><ul><li>Gantt Chart </li></ul>
  62. 64. Data Visualization Components (DVT)
  63. 65. Cuyahoga County GIS Example
  64. 66. Data Binding with the ADF Model The heart of ADF <ul><li>Single interface for any business service implementation </li></ul><ul><ul><li>Abstract implementation from clients </li></ul></ul><ul><li>Drag-and-drop data binding for all services </li></ul>
  65. 67. ADF Skins & JSF Page Templates <ul><li>ADF Skins </li></ul><ul><ul><li>Skin is a style sheet based on the CSS 3.0 syntax </li></ul></ul><ul><ul><li>Load dynamically during runtime </li></ul></ul><ul><li>ADF Page Templates </li></ul><ul><ul><li>Consistent layout and style for all your pages </li></ul></ul><ul><ul><li>Base UI components for layout and look </li></ul></ul><ul><ul><li>Pluggable content zones (facets) for page-specific content </li></ul></ul><ul><ul><li>Cannot be nested </li></ul></ul>
  66. 68. Page Fragments <ul><li>Not complete JSF pages – they do not have a document tag ( af:document ) or view tag ( f:view ) </li></ul><ul><li>Cannot be run on its own </li></ul><ul><li>Share the same request scope if inside the same page </li></ul><ul><li>Reusable portion of a page </li></ul><ul><li>Reduce the complexity of large pages </li></ul>
  67. 69. Creating a Page Fragment <ul><li>Create a page fragment by doing one of: </li></ul><ul><ul><li>1. Use the New Gallery </li></ul></ul><ul><ul><li>2. Double-click a view in a bounded task flow that uses page fragments </li></ul></ul>1 2
  68. 70. Using a Page Fragment in a Page <ul><ul><li>Two options: </li></ul></ul><ul><ul><li>Insert the jsp:include tag </li></ul></ul><ul><ul><li><jsp:include page=“/fragment_page.jsff”/> </li></ul></ul><ul><ul><ul><li>The included page fragment uses the binding context of the consuming page </li></ul></ul></ul><ul><ul><ul><li>Page definition file for page fragment is not loaded (doesn’t use bindings) </li></ul></ul></ul><ul><ul><li>Insert a bounded task flow with page fragments as a region in your page; the page fragment can have its own binding context </li></ul></ul><ul><ul><li>Modifying the page fragment affects all pages that use it </li></ul></ul>
  69. 71. Task Flows Reusable ADF Components <ul><li>An extension to the ADF page flow concept </li></ul><ul><li>Can include pages, page fragments, method calls and other task flows </li></ul><ul><li>Support for bookmarking, transaction management, exception handling, and the browser back button </li></ul>
  70. 72. ADF TaskFlows <ul><li>Define flows of pages and methods </li></ul><ul><li>Adds reusability of flows </li></ul><ul><li>Advance functionality in a declarative way </li></ul><ul><ul><li>Declarative decision points </li></ul></ul><ul><ul><li>Executing code in a flow </li></ul></ul><ul><ul><li>Security </li></ul></ul><ul><ul><li>Bookmarking </li></ul></ul><ul><ul><li>Back button support </li></ul></ul><ul><ul><li>Exception and transaction management </li></ul></ul><ul><ul><li>Save for later </li></ul></ul><ul><ul><li>Memory scope management </li></ul></ul><ul><li>An extension to the JSF page flow engine </li></ul>
  71. 73. WebCenter Services TaskFlows Catalog
  72. 74. Discussions TaskFlow Document Library TaskFlow Search TaskFlow
  73. 75. <Insert Picture Here> Exposing Portlets Business Services User Interface Business Processes Exposed Portlets
  74. 76. Exposing Portlets <ul><li>Portlets are reusable web components providing personalization and customization capabilities </li></ul><ul><ul><li>Standards-based portlets (JSR 168) </li></ul></ul><ul><ul><li>Oracle PDK-Java portlets </li></ul></ul><ul><ul><li>PL/SQL portlets </li></ul></ul><ul><li>JSF components </li></ul><ul><ul><li>PanelCustomizable </li></ul></ul><ul><ul><ul><li>Move left/right/up/down </li></ul></ul></ul><ul><ul><ul><li>Hide/show </li></ul></ul></ul><ul><ul><li>ShowDetailFrame </li></ul></ul><ul><ul><ul><li>Minimize/maximize </li></ul></ul></ul>
  75. 77. Task Flows vs. Portlets <ul><li>Similar in functionality and behavior </li></ul><ul><li>Task flows are local to the application </li></ul><ul><ul><li>Can share information and transaction boundaries with other items on the page </li></ul></ul><ul><li>Portlets are external to the application </li></ul><ul><ul><li>Has some overhead </li></ul></ul><ul><li>Task flows can be portletized for reuse outside the application (JSR-301) </li></ul>
  76. 78. Building a Portlet from a Task Flow
  77. 79. <Insert Picture Here> Alternative UIs Business Services User Interface Business Processes Exposed Portlets
  78. 80. Desktop Development Excel Integration Microsoft Office Declarative Binding Bulk Transactions Connected Disconnected Secure Business Services
  79. 81. ADF Mobile Browser Architecture Business Services Data Services Model Controller View Struts Relational Data XML Data Legacy Data JSP Metadata Services ADFm (JSR 227) Packaged Apps JSF MyFaces JSF/ADFc Java EJB BAM BPEL ADF BC BI XML Office Swing WebServices Portlet Toplink JMX JCR Mobile Browser Client
  80. 82. ADF Mobile Browser – Design Time Support <ul><li>Mobile render kit handles support for different markup / device capabilities </li></ul><ul><li>Single application to handle both HTML and AJAX clients </li></ul><ul><li>Declarative, drag-and-drop development paradigm </li></ul><ul><li>Same Business Logic components are shared across mobile and desktop applications </li></ul>
  81. 83. ADF Mobile Browser – Run Time Support <ul><li>Supports both consumer and smartphone browsers </li></ul><ul><ul><li>Leverages AJAX features in smartphone browsers </li></ul></ul><ul><ul><li>Downgrades gracefully to support plain HTML browsers </li></ul></ul><ul><li>Requires browsers supporting HTML / XHTML MP1 and WAP 2.0 </li></ul><ul><li>Can be skinned with different style sheets based on user agent detection </li></ul><ul><li>Components size dynamically based on form factor </li></ul><ul><li>Partial page refresh </li></ul><ul><ul><li>Requires full AJAX support </li></ul></ul><ul><li>Page animation/transition support </li></ul>
  82. 84. ADF Mobile Browser Mobile Browser Support <ul><li>Apple iPhone and iPod Touch Safari </li></ul><ul><li>BlackBerry Browser 4.2 and above </li></ul><ul><ul><li>Browser version 4.6 and above supports PPR </li></ul></ul><ul><li>Windows Mobile Pocket IE 5 and 6 </li></ul><ul><ul><li>Ensure “Fit to Screen” view is selected to optimize display </li></ul></ul><ul><li>Nokia S60 Browser </li></ul><ul><li>Android Browser </li></ul><ul><li>Plain HTML Browsers in Consumer Mobile Phones </li></ul><ul><ul><li>Minimal browser requirement: HTML / XHTML MP1 and WAP 2.0 support </li></ul></ul><ul><ul><li>Need to download from Apace MyFaces Trinidad project </li></ul></ul>
  83. 85. <Insert Picture Here> Metadata Services
  84. 86. What is Metadata Services Framework (MDS)? <ul><li>A common infrastructure for metadata </li></ul><ul><li>Available across App Server Suite </li></ul><ul><ul><li>ADF, SOA, Business Process Management (BPEL) etc. </li></ul></ul><ul><li>Provides runtime and design time services such as </li></ul><ul><ul><li>Flexible, Open Storage Options (export/import, file or database) </li></ul></ul><ul><ul><li>Versioning- track and rollback changes to your application </li></ul></ul><ul><ul><li>Team Development Support </li></ul></ul><ul><ul><li>Dependency Management </li></ul></ul><ul><ul><li>Sandboxing </li></ul></ul><ul><ul><li>Customization and Personalization </li></ul></ul>
  85. 87. Customizing with MDS <ul><li>How it is used </li></ul><ul><ul><li>Web Center’s Page Editor </li></ul></ul><ul><ul><ul><li>Allows Business Analysts and Admin browser based design experience </li></ul></ul></ul><ul><ul><li>ADF components persist end user personalization to MDS </li></ul></ul><ul><ul><ul><li>User removes columns from a table or freezes columns </li></ul></ul></ul><ul><ul><li>Customization Developer Role in Jdeveloper (seeded) </li></ul></ul><ul><ul><ul><li>Allows developers to verticalize their applications </li></ul></ul></ul><ul><ul><ul><li>i.e Change attributes displayed based on industry </li></ul></ul></ul><ul><ul><ul><li>Customer customizes delivered product to better meet their business practices. </li></ul></ul></ul>
  86. 88. Metadata Services Customization Laura’s Page John’s Page + + MDS Customization Engine Metadata Repository - File or DB No User Customization Base Document User1’s User Customization Site Customization
  87. 89. Customization <ul><li>Multiple layers of customization </li></ul><ul><li>Configuration determines: </li></ul><ul><ul><li>Number of layers (Verticalization, Site, User etc.) </li></ul></ul><ul><ul><li>Precedence of layers </li></ul></ul><ul><li>Context can be determined at runtime </li></ul><ul><li>Customizations saved as separate XML documents </li></ul><ul><li>Base and customized metadata stored in MDS repository </li></ul>
  88. 90. Customization Layers simplify Upgrade Industry Site User Industry Site User Version 1 Version 2 Customer Customizations Carry Forward Upgrade Can Change Base Metadata
  89. 91. End User Customization <ul><li>User customizations of ADF components </li></ul><ul><ul><li>ex.User hides and reorders columns in a table </li></ul></ul><ul><ul><ul><li>Changes Persists for the Session </li></ul></ul></ul><ul><ul><ul><li>Changes Persists across Sessions using MDS </li></ul></ul></ul><ul><ul><ul><li>Project Level Settings </li></ul></ul></ul><ul><li>Many ADF components support user customization out of the box </li></ul>
  90. 92. End User Customization <ul><li>Developers choose which to persist </li></ul><ul><ul><li>Initially specified at the application </li></ul></ul><ul><ul><li>Override setting for a page </li></ul></ul><ul><ul><li>Override for an instance of a component </li></ul></ul>
  91. 93. Developer Customization <ul><li>Customizations are made with JDeveloper’s Customization Role </li></ul><ul><li>Customization are made for each defined layer </li></ul><ul><li>Experience is the same as creating base metadata </li></ul><ul><li>Only Metadata is customizable (not java files etc.) </li></ul><ul><li>Only existing metadata, can’t create new pages etc. </li></ul>
  92. 94. Oracle Fusion Development Platform <ul><li>Integrated </li></ul><ul><ul><li>Full development life cycle </li></ul></ul><ul><ul><li>Not only for Java EE but for the entire platform </li></ul></ul><ul><li>Productive </li></ul><ul><ul><li>Visual and Declarative </li></ul></ul><ul><ul><li>ADF </li></ul></ul><ul><li>Standard </li></ul><ul><ul><li>Choice of technologies </li></ul></ul><ul><ul><li>Choice of deployment platforms </li></ul></ul>