SlideShare a Scribd company logo
1 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
2 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Real World ADF Design & Architecture Principles
Application Customization and Personalization
ORACLE
PRODUCT
LOGO
15th Feb 2013 v1.0
3 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Learning Objectives
•  At the end of this module you should be able to:
–  Know about the differences between Customization and
Personalization
–  Explain the MDS architecture
–  Understand how to apply customization to an ADF application
and how to deploy customized applications
–  Identify the number of MDS instances and partitions you need for
an application
Image: imagerymajestic/ FreeDigitalPhotos.net
4 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
•  Intro
•  Adaptation
•  Personalization
•  Customization
•  Composer (Customization @ Runtime)
•  Personalization & Customization Architecture
5 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.5 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
You can only please most people some of the
time, and some people most of the time.
Image: Ambro/ FreeDigitalPhotos.net
6 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.6 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
You can only please most people some of the
time, and some people most of the time.
Image: Ambro+imagerymajestic/ FreeDigitalPhotos.net
What if it was possible for anyone
at any time?
7 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Application Development Framework (ADF)
•  ADF Faces Rich Client
•  Data Visualization Components
•  ADF Controller
•  ADF Binding Layer
•  ADF Business Components
Candidates for Customization and Personalization
8 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.8 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
How does customization and personalization fit in
an architect training course?
Image: imagerymajestic/ FreeDigitalPhotos.net
9 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
•  Intro
•  Adaptation
•  Personalization
•  Customization
•  Composer (Customization @ Runtime)
•  Personalization & Customization Architecture
10 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Adaptation
•  Adaptive Design
–  Build responsive user interfaces
•  Adapting to user agents
–  Screen resolution
–  Touch support
–  Responsibility
11 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
•  Intro
•  Adaptation
•  Personalization
•  Customization
•  Composer (Customization @ Runtime)
•  Personalization & Customization Architecture
12 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Personalization Use Case
•  Wants different order of panel boxes in a panel dash board
•  Prefers data table columns in a different order
•  Likes to re-arrange order of input fields in an input form
•  Needs application to memorize collapse state of panelBox,
panelSplitter, showDetail header
•  Wants to save custom af:query settings
A User …
13 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Application Personalization in ADF Faces
•  Persists changes for ADF Faces components and restores them
•  User personalization based on end user interaction
–  Changes to an attribute value
–  Addition or removal of a child component
–  Re-ordering of children within the same parent
–  Move of child component to a different parent
14 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Personalization With MDS Or Without?
15 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Personalization Without MDS
•  All component changes are saved for the duration of the user
session
–  No filtering of components that should not be personalizable
–  All changes are kept in session object, which has an impact to
performance for large applications
16 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Personalization With MDS
•  Personalization is saved beyond application re-start
•  You can define which component type and which component
attributes can be personalized
–  Configuration in adf-config.xml
•  Each UI component has a persist / dontPersist property that allows
you to override the global component type settings for fine granular
personalization definitions
–  Personalization by component instance added to a page or view
17 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
•  Intro
•  Adaptation
•  Personalization
•  Customization
•  Composer (Customization @ Runtime)
•  Personalization & Customization Architecture
18 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Customization Use Case
•  Requires additional input fields and business service attributes in
specific geographic regions
•  Needs a way to provide experienced users with a "type ahead" form
whereas novice users need data input wizards and LOV
•  Requires an application to render different if accessed from outside
of the intranet or after business hours
•  Wants to perform navigation differently based on user
responsibilities identified by application roles
•  Show different user information based on user's role in the company
A Business …
19 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Customization Should
•  Not impact the base application
•  Support patching and upgrades
•  Require zero or only minor application downtime
•  Be easy to manage and maintain
•  Be provided with optimized performance
•  Be scalable and fail over enabled
•  Be applied conditionally
20 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Customization Layers in MDS
•  Customization layers are defined and configured as Java objects
•  Seeded metadata changes are associated with a customization
layer
•  Order of layers matters
•  Personalization always is the "tip-layer"
21 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Metadata Customization
Base	
  App	
  
Individual	
  
Customiza4on	
  
Individual	
  
Customiza4on	
  
Group	
  
Customiza4on	
  
Group	
  
Customiza4on	
  
22 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Adding Customization To ADF Applications
•  Build the base application
•  Enable MDS and seeded customization
•  Optionally, create your own customization class
–  Name
–  Cache hint
–  Layer name
•  Configure customization classes in adf-config.xml
–  Important: add UserCC customization object for user specific
personalization
23 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Default Customization Classes in ADF
•  UserCC
–  Returns the Principal name for authenticated user
–  Use for end user personalization
•  SiteCC
–  Returns "site" as layer value
•  ADFRolesCC
–  Returns enterprise and application role names
•  Use enterprise roles for site level customization
•  Use application roles for seeded customization
24 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Ho-to Build Seeded MDS Customizations
Declarative Development
•  Start Oracle JDeveloper with the
Customization Developer Role
•  Define metadata changes for defined
customization layers
•  Note that developer experience is the
same as when creating base metadata
•  Only existing metadata is customizable
–  No Java objects
25 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Packaging of Defined Customizations
•  A Compressed archive of selected metadata
•  Used to deploy metadata content to MDS repository
•  Used by the following application types
–  ADF applications
–  SOA composite applications
–  Oracle WebCenter Portal applications
Metadata Archive (MAR)
26 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Packaging of Defined Customizations
Metadata Archive (MAR)
27 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
•  Intro
•  Adaptation
•  Personalization
•  Customization
•  Composer (Customization @ Runtime)
•  Personalization & Customization Architecture
28 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Oracle WebCenter
•  Integrated set of products to build social applications, collaborative
communities, composite applications and enterprise portals
•  Product and Framework built based on Oracle ADF
•  Leverages ADF Security for application security and customization
authorization
•  Separate license from Oracle ADF
29 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Oracle WebCenter
•  Browser based platform
•  Allows page and layout customization
at runtime
•  Includes
–  Resource Catalog to select view
components and services (developed as
task flows)
–  Sandbox to test changes in isolation
•  Provides additional ADF layout
container components
Oracle Composer
30 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Program Agenda
•  Intro
•  Adaptation
•  Personalization
•  Customization
•  Composer (Customization @ Runtime)
•  Personalization & Customization Architecture
31 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Layered Customization Runtime View
Application
View
Controller
ADF Model
ADF BC
Layer 1 Layer 2 Layer 3 Layer 4 Layer 5 Layer 6 Layer 7
Personalization
Base App
Seeded Customization
32 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Application Runtime View
33 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.33 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
How many customization layers do I need and what is
the number of layers I should not exceed?
Image: imagerymajestic/ FreeDigitalPhotos.net
34 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.34 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Could I use customization for implementing
security?
Image: imagerymajestic/ FreeDigitalPhotos.net
35 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.35 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Anything I have to keep in mind when using MDS
to implement security?
Image: imagerymajestic/ FreeDigitalPhotos.net
36 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Conclusion
•  Customization and Personalization should be
considered as part of the application design to avoid
unnecessary coding
•  Consider performance aspects when applying
customizations and personalization features
•  Customization may be used to enforce security. If you
do so
–  Ensure application is save when MDS repository content is missing
–  Implement defense in depth in that you backup MDS security
definitions in the application
•  Consider a deployment strategy that allows you to
upgrade applications and FMW components
37 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Further Reading
•  Building Customizable Applications Using Oracle Metadata Services (III)
–  http://www.oracle.com/technetwork/articles/adf/part10-085778.html
•  Fusion Middleware Fusion Developer's Guide :
–  Customizing Applications with MDS
•  http://docs.oracle.com/cd/E15523_01/web.1111/b31974/customize.htm#CFHBABEB
–  Allowing User Customizations at Runtime
•  http://docs.oracle.com/cd/E15523_01/web.1111/b31974/ad_persist.htm
38 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

More Related Content

What's hot (20)

Oracle ADF Architecture TV - Development - Error Handling
Oracle ADF Architecture TV - Development - Error HandlingOracle ADF Architecture TV - Development - Error Handling
Oracle ADF Architecture TV - Development - Error Handling
Chris Muir
 
Oracle ADF Architecture TV - Deployment - Deployment Options
Oracle ADF Architecture TV - Deployment - Deployment OptionsOracle ADF Architecture TV - Deployment - Deployment Options
Oracle ADF Architecture TV - Deployment - Deployment Options
Chris Muir
 
Oracle ADF Architecture TV - Design - ADF Architectural Patterns
Oracle ADF Architecture TV - Design - ADF Architectural PatternsOracle ADF Architecture TV - Design - ADF Architectural Patterns
Oracle ADF Architecture TV - Design - ADF Architectural Patterns
Chris Muir
 
Oracle ADF Architecture TV - Design - ADF Reusable Artifacts
Oracle ADF Architecture TV - Design - ADF Reusable ArtifactsOracle ADF Architecture TV - Design - ADF Reusable Artifacts
Oracle ADF Architecture TV - Design - ADF Reusable Artifacts
Chris Muir
 
Oracle ADF Architecture TV - Deployment - Build Options
Oracle ADF Architecture TV - Deployment - Build OptionsOracle ADF Architecture TV - Deployment - Build Options
Oracle ADF Architecture TV - Deployment - Build Options
Chris Muir
 
Oracle ADF Architecture TV - Deployment - System Topologies
Oracle ADF Architecture TV - Deployment - System TopologiesOracle ADF Architecture TV - Deployment - System Topologies
Oracle ADF Architecture TV - Deployment - System Topologies
Chris Muir
 
Oracle ADF Architecture TV - Design - ADF BC Application Module Design
Oracle ADF Architecture TV - Design - ADF BC Application Module DesignOracle ADF Architecture TV - Design - ADF BC Application Module Design
Oracle ADF Architecture TV - Design - ADF BC Application Module Design
Chris Muir
 
Oracle ADF Architecture TV - Design - Project Dependencies
Oracle ADF Architecture TV - Design - Project DependenciesOracle ADF Architecture TV - Design - Project Dependencies
Oracle ADF Architecture TV - Design - Project Dependencies
Chris Muir
 
Oracle ADF Architecture TV - Design - Usability and Layout Design
Oracle ADF Architecture TV - Design - Usability and Layout DesignOracle ADF Architecture TV - Design - Usability and Layout Design
Oracle ADF Architecture TV - Design - Usability and Layout Design
Chris Muir
 
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation OptionsOracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Chris Muir
 
Oracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version ControlOracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version Control
Chris Muir
 
Oracle ADF Architecture TV - Development - Logging
Oracle ADF Architecture TV - Development - LoggingOracle ADF Architecture TV - Development - Logging
Oracle ADF Architecture TV - Development - Logging
Chris Muir
 
Oracle ADF Architecture TV - Design - MDS Infrastructure Decisions
Oracle ADF Architecture TV - Design - MDS Infrastructure DecisionsOracle ADF Architecture TV - Design - MDS Infrastructure Decisions
Oracle ADF Architecture TV - Design - MDS Infrastructure Decisions
Chris Muir
 
Oracle ADF Architecture TV - Design - Task Flow Transaction Options
Oracle ADF Architecture TV - Design - Task Flow Transaction OptionsOracle ADF Architecture TV - Design - Task Flow Transaction Options
Oracle ADF Architecture TV - Design - Task Flow Transaction Options
Chris Muir
 
Oracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for InternationalizationOracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for Internationalization
Chris Muir
 
Oracle ADF Architecture TV - Design - Task Flow Overview
Oracle ADF Architecture TV - Design - Task Flow OverviewOracle ADF Architecture TV - Design - Task Flow Overview
Oracle ADF Architecture TV - Design - Task Flow Overview
Chris Muir
 
Oracle ADF Architecture TV - Planning & Getting Started - Team, Skills and D...
Oracle ADF Architecture TV -  Planning & Getting Started - Team, Skills and D...Oracle ADF Architecture TV -  Planning & Getting Started - Team, Skills and D...
Oracle ADF Architecture TV - Planning & Getting Started - Team, Skills and D...
Chris Muir
 
Let's Talk Mobile
Let's Talk MobileLet's Talk Mobile
Let's Talk Mobile
Chris Muir
 
Oracle ADF Architecture TV - Design - Task Flow Data Control Scope Options
Oracle ADF Architecture TV - Design - Task Flow Data Control Scope OptionsOracle ADF Architecture TV - Design - Task Flow Data Control Scope Options
Oracle ADF Architecture TV - Design - Task Flow Data Control Scope Options
Chris Muir
 
ADF Mobile: Implementing Data Caching and Synching
ADF Mobile: Implementing Data Caching and SynchingADF Mobile: Implementing Data Caching and Synching
ADF Mobile: Implementing Data Caching and Synching
Steven Davelaar
 
Oracle ADF Architecture TV - Development - Error Handling
Oracle ADF Architecture TV - Development - Error HandlingOracle ADF Architecture TV - Development - Error Handling
Oracle ADF Architecture TV - Development - Error Handling
Chris Muir
 
Oracle ADF Architecture TV - Deployment - Deployment Options
Oracle ADF Architecture TV - Deployment - Deployment OptionsOracle ADF Architecture TV - Deployment - Deployment Options
Oracle ADF Architecture TV - Deployment - Deployment Options
Chris Muir
 
Oracle ADF Architecture TV - Design - ADF Architectural Patterns
Oracle ADF Architecture TV - Design - ADF Architectural PatternsOracle ADF Architecture TV - Design - ADF Architectural Patterns
Oracle ADF Architecture TV - Design - ADF Architectural Patterns
Chris Muir
 
Oracle ADF Architecture TV - Design - ADF Reusable Artifacts
Oracle ADF Architecture TV - Design - ADF Reusable ArtifactsOracle ADF Architecture TV - Design - ADF Reusable Artifacts
Oracle ADF Architecture TV - Design - ADF Reusable Artifacts
Chris Muir
 
Oracle ADF Architecture TV - Deployment - Build Options
Oracle ADF Architecture TV - Deployment - Build OptionsOracle ADF Architecture TV - Deployment - Build Options
Oracle ADF Architecture TV - Deployment - Build Options
Chris Muir
 
Oracle ADF Architecture TV - Deployment - System Topologies
Oracle ADF Architecture TV - Deployment - System TopologiesOracle ADF Architecture TV - Deployment - System Topologies
Oracle ADF Architecture TV - Deployment - System Topologies
Chris Muir
 
Oracle ADF Architecture TV - Design - ADF BC Application Module Design
Oracle ADF Architecture TV - Design - ADF BC Application Module DesignOracle ADF Architecture TV - Design - ADF BC Application Module Design
Oracle ADF Architecture TV - Design - ADF BC Application Module Design
Chris Muir
 
Oracle ADF Architecture TV - Design - Project Dependencies
Oracle ADF Architecture TV - Design - Project DependenciesOracle ADF Architecture TV - Design - Project Dependencies
Oracle ADF Architecture TV - Design - Project Dependencies
Chris Muir
 
Oracle ADF Architecture TV - Design - Usability and Layout Design
Oracle ADF Architecture TV - Design - Usability and Layout DesignOracle ADF Architecture TV - Design - Usability and Layout Design
Oracle ADF Architecture TV - Design - Usability and Layout Design
Chris Muir
 
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation OptionsOracle ADF Architecture TV - Design - Task Flow Navigation Options
Oracle ADF Architecture TV - Design - Task Flow Navigation Options
Chris Muir
 
Oracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version ControlOracle ADF Architecture TV - Development - Version Control
Oracle ADF Architecture TV - Development - Version Control
Chris Muir
 
Oracle ADF Architecture TV - Development - Logging
Oracle ADF Architecture TV - Development - LoggingOracle ADF Architecture TV - Development - Logging
Oracle ADF Architecture TV - Development - Logging
Chris Muir
 
Oracle ADF Architecture TV - Design - MDS Infrastructure Decisions
Oracle ADF Architecture TV - Design - MDS Infrastructure DecisionsOracle ADF Architecture TV - Design - MDS Infrastructure Decisions
Oracle ADF Architecture TV - Design - MDS Infrastructure Decisions
Chris Muir
 
Oracle ADF Architecture TV - Design - Task Flow Transaction Options
Oracle ADF Architecture TV - Design - Task Flow Transaction OptionsOracle ADF Architecture TV - Design - Task Flow Transaction Options
Oracle ADF Architecture TV - Design - Task Flow Transaction Options
Chris Muir
 
Oracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for InternationalizationOracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for Internationalization
Chris Muir
 
Oracle ADF Architecture TV - Design - Task Flow Overview
Oracle ADF Architecture TV - Design - Task Flow OverviewOracle ADF Architecture TV - Design - Task Flow Overview
Oracle ADF Architecture TV - Design - Task Flow Overview
Chris Muir
 
Oracle ADF Architecture TV - Planning & Getting Started - Team, Skills and D...
Oracle ADF Architecture TV -  Planning & Getting Started - Team, Skills and D...Oracle ADF Architecture TV -  Planning & Getting Started - Team, Skills and D...
Oracle ADF Architecture TV - Planning & Getting Started - Team, Skills and D...
Chris Muir
 
Let's Talk Mobile
Let's Talk MobileLet's Talk Mobile
Let's Talk Mobile
Chris Muir
 
Oracle ADF Architecture TV - Design - Task Flow Data Control Scope Options
Oracle ADF Architecture TV - Design - Task Flow Data Control Scope OptionsOracle ADF Architecture TV - Design - Task Flow Data Control Scope Options
Oracle ADF Architecture TV - Design - Task Flow Data Control Scope Options
Chris Muir
 
ADF Mobile: Implementing Data Caching and Synching
ADF Mobile: Implementing Data Caching and SynchingADF Mobile: Implementing Data Caching and Synching
ADF Mobile: Implementing Data Caching and Synching
Steven Davelaar
 

Similar to Oracle ADF Architecture TV - Design - Application Customization and MDS (20)

Experiences in building a PaaS Platform - Java One SFO 2012
Experiences in building a PaaS Platform - Java One SFO 2012Experiences in building a PaaS Platform - Java One SFO 2012
Experiences in building a PaaS Platform - Java One SFO 2012
Jagadish Prasath
 
Many Clouds, Many Choices (Oracle)
Many Clouds, Many Choices (Oracle) Many Clouds, Many Choices (Oracle)
Many Clouds, Many Choices (Oracle)
COMPUTEX TAIPEI
 
C1 oracle's cloud computing strategy your strategy-your cloud_your choice
C1   oracle's cloud computing strategy your strategy-your cloud_your choiceC1   oracle's cloud computing strategy your strategy-your cloud_your choice
C1 oracle's cloud computing strategy your strategy-your cloud_your choice
Dr. Wilfred Lin (Ph.D.)
 
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partnerCon8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Berry Clemens
 
OOW15 - personalize and extend oracle ebs for desktops and tablets
OOW15 - personalize and extend oracle ebs for desktops and tabletsOOW15 - personalize and extend oracle ebs for desktops and tablets
OOW15 - personalize and extend oracle ebs for desktops and tablets
vasuballa
 
Cloud based database
Cloud based databaseCloud based database
Cloud based database
Aravindharamanan S
 
The Oracle Cloud for Newbies
The Oracle Cloud for NewbiesThe Oracle Cloud for Newbies
The Oracle Cloud for Newbies
Revelation Technologies
 
Presentation cloud management
Presentation   cloud managementPresentation   cloud management
Presentation cloud management
xKinAnx
 
Best practices for application migration to public clouds interop presentation
Best practices for application migration to public clouds interop presentationBest practices for application migration to public clouds interop presentation
Best practices for application migration to public clouds interop presentation
esebeus
 
Oracle Application Express Introduction
Oracle Application Express  IntroductionOracle Application Express  Introduction
Oracle Application Express Introduction
ssusera8d54f
 
Provisioning with Oracle Cloud Stack Manager
Provisioning with Oracle Cloud Stack ManagerProvisioning with Oracle Cloud Stack Manager
Provisioning with Oracle Cloud Stack Manager
Simon Haslam
 
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow ConceptsOracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Chris Muir
 
(ATS4-DEV01) Accelrys Draw Enterprise Edition is more than an end user applic...
(ATS4-DEV01) Accelrys Draw Enterprise Edition is more than an end user applic...(ATS4-DEV01) Accelrys Draw Enterprise Edition is more than an end user applic...
(ATS4-DEV01) Accelrys Draw Enterprise Edition is more than an end user applic...
BIOVIA
 
Oracle MAA Best Practices - Applications Considerations
Oracle MAA Best Practices - Applications ConsiderationsOracle MAA Best Practices - Applications Considerations
Oracle MAA Best Practices - Applications Considerations
Markus Michalewicz
 
Latest Innovations in Database as a Service Enabled by Oracle Enterprise Manager
Latest Innovations in Database as a Service Enabled by Oracle Enterprise ManagerLatest Innovations in Database as a Service Enabled by Oracle Enterprise Manager
Latest Innovations in Database as a Service Enabled by Oracle Enterprise Manager
Hari Srinivasan
 
APEX – jak vytvořit jednoduše aplikaci
APEX – jak vytvořit jednoduše aplikaciAPEX – jak vytvořit jednoduše aplikaci
APEX – jak vytvořit jednoduše aplikaci
MarketingArrowECS_CZ
 
toolkit
toolkittoolkit
toolkit
Mike Martinez
 
C5 accelerating your journey to self-service it
C5   accelerating your journey to self-service itC5   accelerating your journey to self-service it
C5 accelerating your journey to self-service it
Dr. Wilfred Lin (Ph.D.)
 
Con9573 managing the oim platform with oracle enterprise manager
Con9573 managing the oim platform with oracle enterprise manager Con9573 managing the oim platform with oracle enterprise manager
Con9573 managing the oim platform with oracle enterprise manager
OracleIDM
 
PaaS enabling Java EE applications through service meta-data and policies - J...
PaaS enabling Java EE applications through service meta-data and policies - J...PaaS enabling Java EE applications through service meta-data and policies - J...
PaaS enabling Java EE applications through service meta-data and policies - J...
Jagadish Prasath
 
Experiences in building a PaaS Platform - Java One SFO 2012
Experiences in building a PaaS Platform - Java One SFO 2012Experiences in building a PaaS Platform - Java One SFO 2012
Experiences in building a PaaS Platform - Java One SFO 2012
Jagadish Prasath
 
Many Clouds, Many Choices (Oracle)
Many Clouds, Many Choices (Oracle) Many Clouds, Many Choices (Oracle)
Many Clouds, Many Choices (Oracle)
COMPUTEX TAIPEI
 
C1 oracle's cloud computing strategy your strategy-your cloud_your choice
C1   oracle's cloud computing strategy your strategy-your cloud_your choiceC1   oracle's cloud computing strategy your strategy-your cloud_your choice
C1 oracle's cloud computing strategy your strategy-your cloud_your choice
Dr. Wilfred Lin (Ph.D.)
 
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partnerCon8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Con8493 simplified ui 2013 tailoring dubois_evers_teter_o'broin_uob_partner
Berry Clemens
 
OOW15 - personalize and extend oracle ebs for desktops and tablets
OOW15 - personalize and extend oracle ebs for desktops and tabletsOOW15 - personalize and extend oracle ebs for desktops and tablets
OOW15 - personalize and extend oracle ebs for desktops and tablets
vasuballa
 
Presentation cloud management
Presentation   cloud managementPresentation   cloud management
Presentation cloud management
xKinAnx
 
Best practices for application migration to public clouds interop presentation
Best practices for application migration to public clouds interop presentationBest practices for application migration to public clouds interop presentation
Best practices for application migration to public clouds interop presentation
esebeus
 
Oracle Application Express Introduction
Oracle Application Express  IntroductionOracle Application Express  Introduction
Oracle Application Express Introduction
ssusera8d54f
 
Provisioning with Oracle Cloud Stack Manager
Provisioning with Oracle Cloud Stack ManagerProvisioning with Oracle Cloud Stack Manager
Provisioning with Oracle Cloud Stack Manager
Simon Haslam
 
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow ConceptsOracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Oracle ADF Architecture TV - Design - Advanced ADF Task Flow Concepts
Chris Muir
 
(ATS4-DEV01) Accelrys Draw Enterprise Edition is more than an end user applic...
(ATS4-DEV01) Accelrys Draw Enterprise Edition is more than an end user applic...(ATS4-DEV01) Accelrys Draw Enterprise Edition is more than an end user applic...
(ATS4-DEV01) Accelrys Draw Enterprise Edition is more than an end user applic...
BIOVIA
 
Oracle MAA Best Practices - Applications Considerations
Oracle MAA Best Practices - Applications ConsiderationsOracle MAA Best Practices - Applications Considerations
Oracle MAA Best Practices - Applications Considerations
Markus Michalewicz
 
Latest Innovations in Database as a Service Enabled by Oracle Enterprise Manager
Latest Innovations in Database as a Service Enabled by Oracle Enterprise ManagerLatest Innovations in Database as a Service Enabled by Oracle Enterprise Manager
Latest Innovations in Database as a Service Enabled by Oracle Enterprise Manager
Hari Srinivasan
 
APEX – jak vytvořit jednoduše aplikaci
APEX – jak vytvořit jednoduše aplikaciAPEX – jak vytvořit jednoduše aplikaci
APEX – jak vytvořit jednoduše aplikaci
MarketingArrowECS_CZ
 
C5 accelerating your journey to self-service it
C5   accelerating your journey to self-service itC5   accelerating your journey to self-service it
C5 accelerating your journey to self-service it
Dr. Wilfred Lin (Ph.D.)
 
Con9573 managing the oim platform with oracle enterprise manager
Con9573 managing the oim platform with oracle enterprise manager Con9573 managing the oim platform with oracle enterprise manager
Con9573 managing the oim platform with oracle enterprise manager
OracleIDM
 
PaaS enabling Java EE applications through service meta-data and policies - J...
PaaS enabling Java EE applications through service meta-data and policies - J...PaaS enabling Java EE applications through service meta-data and policies - J...
PaaS enabling Java EE applications through service meta-data and policies - J...
Jagadish Prasath
 

Recently uploaded (20)

Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell: Transforming Business Strategy Through Data-Driven Insights
Andrew Marnell
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep DiveDesigning Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
Designing Low-Latency Systems with Rust and ScyllaDB: An Architectural Deep Dive
ScyllaDB
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Cybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure ADCybersecurity Identity and Access Solutions using Azure AD
Cybersecurity Identity and Access Solutions using Azure AD
VICTOR MAESTRE RAMIREZ
 
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxIncreasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptx
Anoop Ashok
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
TrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business ConsultingTrsLabs - Fintech Product & Business Consulting
TrsLabs - Fintech Product & Business Consulting
Trs Labs
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 

Oracle ADF Architecture TV - Design - Application Customization and MDS

  • 1. 1 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 2. 2 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Real World ADF Design & Architecture Principles Application Customization and Personalization ORACLE PRODUCT LOGO 15th Feb 2013 v1.0
  • 3. 3 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Learning Objectives •  At the end of this module you should be able to: –  Know about the differences between Customization and Personalization –  Explain the MDS architecture –  Understand how to apply customization to an ADF application and how to deploy customized applications –  Identify the number of MDS instances and partitions you need for an application Image: imagerymajestic/ FreeDigitalPhotos.net
  • 4. 4 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Program Agenda •  Intro •  Adaptation •  Personalization •  Customization •  Composer (Customization @ Runtime) •  Personalization & Customization Architecture
  • 5. 5 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.5 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. You can only please most people some of the time, and some people most of the time. Image: Ambro/ FreeDigitalPhotos.net
  • 6. 6 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.6 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. You can only please most people some of the time, and some people most of the time. Image: Ambro+imagerymajestic/ FreeDigitalPhotos.net What if it was possible for anyone at any time?
  • 7. 7 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Application Development Framework (ADF) •  ADF Faces Rich Client •  Data Visualization Components •  ADF Controller •  ADF Binding Layer •  ADF Business Components Candidates for Customization and Personalization
  • 8. 8 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.8 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. How does customization and personalization fit in an architect training course? Image: imagerymajestic/ FreeDigitalPhotos.net
  • 9. 9 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Program Agenda •  Intro •  Adaptation •  Personalization •  Customization •  Composer (Customization @ Runtime) •  Personalization & Customization Architecture
  • 10. 10 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Adaptation •  Adaptive Design –  Build responsive user interfaces •  Adapting to user agents –  Screen resolution –  Touch support –  Responsibility
  • 11. 11 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Program Agenda •  Intro •  Adaptation •  Personalization •  Customization •  Composer (Customization @ Runtime) •  Personalization & Customization Architecture
  • 12. 12 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Personalization Use Case •  Wants different order of panel boxes in a panel dash board •  Prefers data table columns in a different order •  Likes to re-arrange order of input fields in an input form •  Needs application to memorize collapse state of panelBox, panelSplitter, showDetail header •  Wants to save custom af:query settings A User …
  • 13. 13 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Application Personalization in ADF Faces •  Persists changes for ADF Faces components and restores them •  User personalization based on end user interaction –  Changes to an attribute value –  Addition or removal of a child component –  Re-ordering of children within the same parent –  Move of child component to a different parent
  • 14. 14 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Personalization With MDS Or Without?
  • 15. 15 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Personalization Without MDS •  All component changes are saved for the duration of the user session –  No filtering of components that should not be personalizable –  All changes are kept in session object, which has an impact to performance for large applications
  • 16. 16 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Personalization With MDS •  Personalization is saved beyond application re-start •  You can define which component type and which component attributes can be personalized –  Configuration in adf-config.xml •  Each UI component has a persist / dontPersist property that allows you to override the global component type settings for fine granular personalization definitions –  Personalization by component instance added to a page or view
  • 17. 17 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Program Agenda •  Intro •  Adaptation •  Personalization •  Customization •  Composer (Customization @ Runtime) •  Personalization & Customization Architecture
  • 18. 18 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Customization Use Case •  Requires additional input fields and business service attributes in specific geographic regions •  Needs a way to provide experienced users with a "type ahead" form whereas novice users need data input wizards and LOV •  Requires an application to render different if accessed from outside of the intranet or after business hours •  Wants to perform navigation differently based on user responsibilities identified by application roles •  Show different user information based on user's role in the company A Business …
  • 19. 19 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Customization Should •  Not impact the base application •  Support patching and upgrades •  Require zero or only minor application downtime •  Be easy to manage and maintain •  Be provided with optimized performance •  Be scalable and fail over enabled •  Be applied conditionally
  • 20. 20 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Customization Layers in MDS •  Customization layers are defined and configured as Java objects •  Seeded metadata changes are associated with a customization layer •  Order of layers matters •  Personalization always is the "tip-layer"
  • 21. 21 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Metadata Customization Base  App   Individual   Customiza4on   Individual   Customiza4on   Group   Customiza4on   Group   Customiza4on  
  • 22. 22 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Adding Customization To ADF Applications •  Build the base application •  Enable MDS and seeded customization •  Optionally, create your own customization class –  Name –  Cache hint –  Layer name •  Configure customization classes in adf-config.xml –  Important: add UserCC customization object for user specific personalization
  • 23. 23 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Default Customization Classes in ADF •  UserCC –  Returns the Principal name for authenticated user –  Use for end user personalization •  SiteCC –  Returns "site" as layer value •  ADFRolesCC –  Returns enterprise and application role names •  Use enterprise roles for site level customization •  Use application roles for seeded customization
  • 24. 24 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Ho-to Build Seeded MDS Customizations Declarative Development •  Start Oracle JDeveloper with the Customization Developer Role •  Define metadata changes for defined customization layers •  Note that developer experience is the same as when creating base metadata •  Only existing metadata is customizable –  No Java objects
  • 25. 25 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Packaging of Defined Customizations •  A Compressed archive of selected metadata •  Used to deploy metadata content to MDS repository •  Used by the following application types –  ADF applications –  SOA composite applications –  Oracle WebCenter Portal applications Metadata Archive (MAR)
  • 26. 26 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Packaging of Defined Customizations Metadata Archive (MAR)
  • 27. 27 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Program Agenda •  Intro •  Adaptation •  Personalization •  Customization •  Composer (Customization @ Runtime) •  Personalization & Customization Architecture
  • 28. 28 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Oracle WebCenter •  Integrated set of products to build social applications, collaborative communities, composite applications and enterprise portals •  Product and Framework built based on Oracle ADF •  Leverages ADF Security for application security and customization authorization •  Separate license from Oracle ADF
  • 29. 29 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Oracle WebCenter •  Browser based platform •  Allows page and layout customization at runtime •  Includes –  Resource Catalog to select view components and services (developed as task flows) –  Sandbox to test changes in isolation •  Provides additional ADF layout container components Oracle Composer
  • 30. 30 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Program Agenda •  Intro •  Adaptation •  Personalization •  Customization •  Composer (Customization @ Runtime) •  Personalization & Customization Architecture
  • 31. 31 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Layered Customization Runtime View Application View Controller ADF Model ADF BC Layer 1 Layer 2 Layer 3 Layer 4 Layer 5 Layer 6 Layer 7 Personalization Base App Seeded Customization
  • 32. 32 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Application Runtime View
  • 33. 33 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.33 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. How many customization layers do I need and what is the number of layers I should not exceed? Image: imagerymajestic/ FreeDigitalPhotos.net
  • 34. 34 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.34 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Could I use customization for implementing security? Image: imagerymajestic/ FreeDigitalPhotos.net
  • 35. 35 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.35 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Anything I have to keep in mind when using MDS to implement security? Image: imagerymajestic/ FreeDigitalPhotos.net
  • 36. 36 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Conclusion •  Customization and Personalization should be considered as part of the application design to avoid unnecessary coding •  Consider performance aspects when applying customizations and personalization features •  Customization may be used to enforce security. If you do so –  Ensure application is save when MDS repository content is missing –  Implement defense in depth in that you backup MDS security definitions in the application •  Consider a deployment strategy that allows you to upgrade applications and FMW components
  • 37. 37 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Further Reading •  Building Customizable Applications Using Oracle Metadata Services (III) –  http://www.oracle.com/technetwork/articles/adf/part10-085778.html •  Fusion Middleware Fusion Developer's Guide : –  Customizing Applications with MDS •  http://docs.oracle.com/cd/E15523_01/web.1111/b31974/customize.htm#CFHBABEB –  Allowing User Customizations at Runtime •  http://docs.oracle.com/cd/E15523_01/web.1111/b31974/ad_persist.htm
  • 38. 38 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.