SlideShare a Scribd company logo
INTRODUCTION TO ATG
FRAMEWORK
AGENDA
What is E-Commerce & m-commerce
Different frameworks/platforms providing e-commerce solutions
Overview of Oracle ATG
Different modules provided by Oracle ATG Commerce
Nucleus
Different Oracle ATG Components
E-COMMERCE & M-COMMERCE
Distributing, Buying, Selling and marketing products and services
over internet through which transaction or terms of sale are
performed electronically.
Types of E-Commerce
 B2B(Applies to businesses buying from and selling to each other. E.g.
Walmart)
 B2C(Applies to business that sells its products or services to consumers.
E.g. flipkart)
 C2B(Applies to any consumer that sells a product or service to a business. )
 C2C(Applies to sites primarily offering goods and services to assist
consumers interacting with each other. E.g. olx)
Overview of atg framework
CONCEPTUAL VIEW OF E-
COMMERCE
FRAMEWORKS PROVIDING E-
COMMERCE SOLUTIONS
Oracle ATG Commerce
SAP Hybris
IBM WCS
Magneto
ART TECHNOLOGY GROUP (ATG)
Web Commerce Application
Highly scalable and flexible component-based architecture.
E-commerce software solutions & On-demand commerce
optimization applications.
Co-founded by Jeet Singh & Joseph Chung in 1991.
ATG’s solutions provide merchandising, marketing, content
personalization, automated recommendations.
Acquired by Oracle in 2005.
The latest version of Oracle ATG Commerce is 11, which includes the
integration support of REST MVC framework, Endeca Experience
Manager.
ATG PLATFORM
ATG platform is built on “layered” and “modular” approach.
ATG Web Commerce applications implement a component
development model based on Java Beans and JSP
The core of ATG platform is it’s Application framework i.e. Dynamo
Application Framework (DAF).
DAF runs on top of the application server (like weblogic, websphere
etc..) and provides essential facilities for application development and
deployment.
ARCHITECTURE OF ORACLE ATG
BASED APPLICATION.
APPLICATIONS IN ORACLE
COMMERCE
Commerce
Personalization
Merchandising
Business Control Center
Customer Service Center
Endeca Commerce & Experience Manager
ATG COMMERCE
DIFFERENT MODULES AVAILABLE IN
ATG
DPS
 Personalization module
 Used to create and maintain user profiles
 User specific business rules
DCS
 Core Commerce Module
 Provides the commerce capabilities like Shopping Cart, Order Purchase &
Checkout.
CONTD..
DSS
 Extends the targeting capabilities of DPS
 Scenarios are event driven
 Designed to manage interaction between the site visitor and content
DCC
 Provides developer with the tool “ACC”
B2BCommerce
B2CCommerce
DCS.CustomCatalogs
Fulfillment
DAS-UI
KEY CONCEPTS
Component Centric Model
MVC2 framework
Dependency Injection
Modular approach
Data Anywhere Architecture (Similar to ORM)
COMPONENT DEVELOPMENT
MODEL
What is a Component?
Examples of Component Architecture
 Microsofts COM/DCOM
 Java Beans
 CORBA
Benefits of Component Development Model
 Code Reusability
 Reduced Development time
 Continuous, Incremental improvements
COMPONENT IN ATG
Any simple Java Class can be treated as a “Component”.
To define a component in ATG, we need to create .properties file in
the corresponding config directory.
E.g. public class MyComponent{ } ->
src/com/dev/MyComponent.java
Create a .properties file in the corresponding config directory
i.e. config/com/dev/MyComponent.properties
The properties file contains the class name and the scope of the
component (request/session/global)
DYNAMO APPLICATION
FRAMEWORK
DAF is the core of Oracle ATG Web Commerce
It runs on top of the application server
It provides a Component Development Environment.
Supplies essential facilities for application development and
deployment
 Nucleus
 Repositories
 Droplets
 FormHandlers
 Tag Libraries
NUCLEUS
Dynamo’s Open Object Framework
Central registry for the java beans which contains our application
level logic.
Creates and configures the components
Organizes them into a hierarchical namespace
FORM HANDLER
Specialized Nucleus Components
Can be embedded into JSPs to do form validation and based on the
result perform actions like submitting user data, forwarding the user
to some other pages
Form handler components have handleXXX() methods, which takes
care of appropriate handler logic based on user action.
Some of the mostly used OOTB form handlers are
ProfileFormHandler, CartModifierFormHandler,
CommitOrderFormHandler etc..
DROPLET
Specialized Nucleus components which are used to display dynamic
content on the JSP pages
Also known as “Dynamo Servlet Beans”
Java Developers and Page designers can work independently and
applications are easier to maintain
OOTB droplets are ItemLookupDroplet, ForEach, Switch etc..
REPOSITORIES
Data Access layer that defines generic representation of data store
Data Anywhere Architecture (DAA) provides a unified view of content
and data
Core of DAA is “Repository API”
Using Repository API, we can employ a single approach to accessing
different data types, including SQL databases, LDAP directories,
content management systems and file systems
HIGH LEVEL OVERVIEW OF DAA
Advantages
 Data Source Independence
 Maximum Performance
 Simplified transactional control
 Fine-grained Access Control
TAG LIBRARIES
Earlier the presentation language used is “JHTML”
JHTML has lots of custom tags to access Dynamo Components
JSP became the defacto language for Presentation tier
Introduced to access Nucleus components and render dynamic
content from JSP files
Example tags include <dsp:form>, <dsp:input>,<dsp:valueof>,
<dsp:a>, <dsp:getvalueof> etc..
DROPLETS
To display the dynamic content on JSP pages using nucleus
components.
We can embed the output of a nucleus component using dsp tag
libraries
e.g. <dsp:droplet name=“/atg/dynamo/ForEach>
<dsp:param name=“array”
bean=“/com/sample/Student.subjects/>
<dsp:oparam name=“output”>
<dsp:valueof param=“element”/>
</dsp:oparam>
CONTD…
Each droplet has a predefined set of parameters that control
it’s behavior
 Input
 Output
 Open
Input parameters are passed into the droplet
e.g. <dsp:param name=“array” bean=“/com/sample/Student.subjects/>
Output parameters are set by the droplet
e.g. <dsp:valueof param=“element”/>
Open parameters specify code to execute at different stages of servlet
processing
Content that needs to be displayed before output is displayed using
outputStart <dsp:oparam name=“outputStart”> …. </dsp:oparam>
<dsp:oparam name=“output”>……</dsp:oparam>
Content that needs to be displayed before output is displayed using
CONTD..
Some of the OOTB droplets
<dsp:droplet name=“atg/dynamo/droplet/foreach”>
<dsp:droplet name=“atg/dynamo/droplet/switch”>
<dsp:droplet name=“atg/dynamo/droplet/empty”>
<dsp:droplet name=“atg/commerce/catalog/ProductLookup”>
FORM HANDLERS
Evaluates the form data before it is submitted, check for errors, and
determine what action to take.
The form input fields are associated with the properties of the form
handler rather than the component that we want to modify
E.g. <dsp:input type=“text” bean=“MyFormHandler.age”>
Form Handler must include one or more handler methods, to handle
the processing of the form.
CONTD…
Handler methods links form elements with Nucleus components
Signature of the handler method
Public boolean handleXXX(DynamoHttpServletRequest req,
DynamoHttpServletResponse res){
----
}
Action based on return valueReturn Value Action
false No further values are processed after the handler is
called. Rest of the page is not served.
true Normal processing of the form values continues
Page specified by the form’s action attribute is served.
CONTD...
Sample Jsp file showing form data
<dsp:form action=“SaveData”>
<dsp:input type=“text” value=“jeet”
bean=“MyFormHandler.firstName” />
<dsp:input type=“text” value=“singh”
bean=“MyFormHandler.firstName” />
<dsp:input type=“submit” value=“Save”
bean=“MyFormHandler.save”/>
<dsp:input type=“cancel” value=“Reset”
bean=“MyFormHandler.cancel” />
</dsp:form>
CONTD…
public class MyFormHandler extends GenericFormHandler{
private String firstName;
private String lastName;
public boolean handleSave(DynamoHttpServletRequest req,
DynamoHttpServletResponse res){ return true/false;}
public boolean handleCancel(DynamoHttpServletRequest req,
DynamoHttpServletResponse res){ return true/false;}
…..
…..
}
CONTD…
MyFormHandler.properties
$class=MyFormHandler -> Fully Qualified Class Name
$scope=request -> how the class instance will behave
age=25 -> form handler property. We have to provide as
name value pairs.
subjects= java,atg,openapi
prop1^=MyOtherFormHandler.prop1
SCOPE OF THE COMPONENTS
•Scope specifies how the nucleus component is used among
different users.
•We specify the scope of the component in .properties file
•Available scopes
• Global: shared among all the users (default)
• Session: for each user session a separate instance will be provided
• Request: for each active request a separate instance will be provided
• Window: for each browse window a separate instance will be provided
• Prototype: every time the component is resolved separate instance of the
components will be provided
Ad

More Related Content

What's hot (20)

online mobile phone shopping
online mobile phone shoppingonline mobile phone shopping
online mobile phone shopping
amar patwa
 
ERP ( College Management System)
ERP ( College Management System)ERP ( College Management System)
ERP ( College Management System)
Pranav Jha
 
ONLINE SHOPPING SYSTEM -SEPM
ONLINE SHOPPING SYSTEM -SEPMONLINE SHOPPING SYSTEM -SEPM
ONLINE SHOPPING SYSTEM -SEPM
Aantariksh Developers
 
Online shopping system (E-commerce)
Online shopping system (E-commerce)Online shopping system (E-commerce)
Online shopping system (E-commerce)
Sarp Infotech
 
Taxi service UML
Taxi service UMLTaxi service UML
Taxi service UML
Ayushi Shah
 
E-commerce
E-commerce   E-commerce
E-commerce
KaleemSarwar2
 
Stored procedure in sql server
Stored procedure in sql serverStored procedure in sql server
Stored procedure in sql server
baabtra.com - No. 1 supplier of quality freshers
 
Book store Black Book - Dinesh48
Book store Black Book - Dinesh48Book store Black Book - Dinesh48
Book store Black Book - Dinesh48
Dinesh Jogdand
 
Online final report
Online final reportOnline final report
Online final report
darshan patel
 
online books selling report shivant and nilesh.docx
online  books selling report shivant and nilesh.docxonline  books selling report shivant and nilesh.docx
online books selling report shivant and nilesh.docx
shivantGupta1
 
Online Shopping based on ASP .NET
Online Shopping based on ASP .NET Online Shopping based on ASP .NET
Online Shopping based on ASP .NET
Pragnya Dash
 
Online shopping report-6 month project
Online shopping report-6 month projectOnline shopping report-6 month project
Online shopping report-6 month project
Ginne yoffe
 
SpringMVC 전체 흐름 알아보기
SpringMVC 전체 흐름 알아보기SpringMVC 전체 흐름 알아보기
SpringMVC 전체 흐름 알아보기
Myung Woon Oh
 
Newgen Banking ppt
Newgen Banking pptNewgen Banking ppt
Newgen Banking ppt
Rahul Bhatia
 
ONLINE GROCERY STORE MANAGEMENT SYSTEM PPT
ONLINE GROCERY STORE MANAGEMENT SYSTEM PPTONLINE GROCERY STORE MANAGEMENT SYSTEM PPT
ONLINE GROCERY STORE MANAGEMENT SYSTEM PPT
ChetanBhandari14
 
Event Driven-Architecture from a Scalability perspective
Event Driven-Architecture from a Scalability perspectiveEvent Driven-Architecture from a Scalability perspective
Event Driven-Architecture from a Scalability perspective
Jonas Bonér
 
Difference between asp.net web api and asp.net mvc
Difference between asp.net web api and asp.net mvcDifference between asp.net web api and asp.net mvc
Difference between asp.net web api and asp.net mvc
Umar Ali
 
[[Srs]] online shopping website for TYBSC IT
[[Srs]] online shopping website for TYBSC IT[[Srs]] online shopping website for TYBSC IT
[[Srs]] online shopping website for TYBSC IT
YogeshDhamke2
 
Online Shopping Full Project Presentation (20 slides)
Online Shopping Full Project Presentation (20 slides)Online Shopping Full Project Presentation (20 slides)
Online Shopping Full Project Presentation (20 slides)
Krishna Mohan Shakya
 
Introduction to Event Sourcing
Introduction to Event SourcingIntroduction to Event Sourcing
Introduction to Event Sourcing
Jeffrey T. Fritz
 
online mobile phone shopping
online mobile phone shoppingonline mobile phone shopping
online mobile phone shopping
amar patwa
 
ERP ( College Management System)
ERP ( College Management System)ERP ( College Management System)
ERP ( College Management System)
Pranav Jha
 
Online shopping system (E-commerce)
Online shopping system (E-commerce)Online shopping system (E-commerce)
Online shopping system (E-commerce)
Sarp Infotech
 
Taxi service UML
Taxi service UMLTaxi service UML
Taxi service UML
Ayushi Shah
 
Book store Black Book - Dinesh48
Book store Black Book - Dinesh48Book store Black Book - Dinesh48
Book store Black Book - Dinesh48
Dinesh Jogdand
 
online books selling report shivant and nilesh.docx
online  books selling report shivant and nilesh.docxonline  books selling report shivant and nilesh.docx
online books selling report shivant and nilesh.docx
shivantGupta1
 
Online Shopping based on ASP .NET
Online Shopping based on ASP .NET Online Shopping based on ASP .NET
Online Shopping based on ASP .NET
Pragnya Dash
 
Online shopping report-6 month project
Online shopping report-6 month projectOnline shopping report-6 month project
Online shopping report-6 month project
Ginne yoffe
 
SpringMVC 전체 흐름 알아보기
SpringMVC 전체 흐름 알아보기SpringMVC 전체 흐름 알아보기
SpringMVC 전체 흐름 알아보기
Myung Woon Oh
 
Newgen Banking ppt
Newgen Banking pptNewgen Banking ppt
Newgen Banking ppt
Rahul Bhatia
 
ONLINE GROCERY STORE MANAGEMENT SYSTEM PPT
ONLINE GROCERY STORE MANAGEMENT SYSTEM PPTONLINE GROCERY STORE MANAGEMENT SYSTEM PPT
ONLINE GROCERY STORE MANAGEMENT SYSTEM PPT
ChetanBhandari14
 
Event Driven-Architecture from a Scalability perspective
Event Driven-Architecture from a Scalability perspectiveEvent Driven-Architecture from a Scalability perspective
Event Driven-Architecture from a Scalability perspective
Jonas Bonér
 
Difference between asp.net web api and asp.net mvc
Difference between asp.net web api and asp.net mvcDifference between asp.net web api and asp.net mvc
Difference between asp.net web api and asp.net mvc
Umar Ali
 
[[Srs]] online shopping website for TYBSC IT
[[Srs]] online shopping website for TYBSC IT[[Srs]] online shopping website for TYBSC IT
[[Srs]] online shopping website for TYBSC IT
YogeshDhamke2
 
Online Shopping Full Project Presentation (20 slides)
Online Shopping Full Project Presentation (20 slides)Online Shopping Full Project Presentation (20 slides)
Online Shopping Full Project Presentation (20 slides)
Krishna Mohan Shakya
 
Introduction to Event Sourcing
Introduction to Event SourcingIntroduction to Event Sourcing
Introduction to Event Sourcing
Jeffrey T. Fritz
 

Viewers also liked (20)

ATG - Web Commerce @ Your Figertips
ATG - Web Commerce @ Your FigertipsATG - Web Commerce @ Your Figertips
ATG - Web Commerce @ Your Figertips
Keyur Shah
 
Oracle Commerce Using ATG & Endeca - Do It Yourself Series
Oracle Commerce Using ATG & Endeca - Do It Yourself SeriesOracle Commerce Using ATG & Endeca - Do It Yourself Series
Oracle Commerce Using ATG & Endeca - Do It Yourself Series
Keyur Shah
 
Atg Introduction
Atg IntroductionAtg Introduction
Atg Introduction
phanishankar
 
ATG Best Practices
ATG Best Practices ATG Best Practices
ATG Best Practices
Kate Semizhon
 
Achieving the Ultimate TTM with ATG
Achieving the Ultimate TTM with ATGAchieving the Ultimate TTM with ATG
Achieving the Ultimate TTM with ATG
Ernst de Haan
 
ATG - Common Terminologies
ATG - Common TerminologiesATG - Common Terminologies
ATG - Common Terminologies
Keyur Shah
 
ATG Commerce: Full Capabilities Overview
ATG Commerce: Full Capabilities OverviewATG Commerce: Full Capabilities Overview
ATG Commerce: Full Capabilities Overview
sobrien15
 
ATG pipelines
ATG pipelinesATG pipelines
ATG pipelines
Kate Semizhon
 
ATG Tutorials - Promotion.
ATG Tutorials - Promotion.ATG Tutorials - Promotion.
ATG Tutorials - Promotion.
Sanju Thomas
 
ATG - Commerce Service Center (CSC)
ATG - Commerce Service Center (CSC)ATG - Commerce Service Center (CSC)
ATG - Commerce Service Center (CSC)
Keyur Shah
 
ATG Product Modules [INTERESTING VIEW]
ATG Product Modules [INTERESTING VIEW]ATG Product Modules [INTERESTING VIEW]
ATG Product Modules [INTERESTING VIEW]
Keyur Shah
 
ATG Advanced Profile Management
ATG Advanced Profile ManagementATG Advanced Profile Management
ATG Advanced Profile Management
Kate Semizhon
 
Common mistakes for ATG applications that affect performance
Common mistakes for ATG applications that affect performanceCommon mistakes for ATG applications that affect performance
Common mistakes for ATG applications that affect performance
Kate Semizhon
 
Oracle ATG Commerce Overview for developers
Oracle ATG Commerce Overview for developers Oracle ATG Commerce Overview for developers
Oracle ATG Commerce Overview for developers
Kate Semizhon
 
Oracle Endeca Commerce - Installation Guide
Oracle Endeca Commerce - Installation GuideOracle Endeca Commerce - Installation Guide
Oracle Endeca Commerce - Installation Guide
Keyur Shah
 
Accessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup WebinarAccessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup Webinar
Keyur Shah
 
ATG Framework,Formhandlers,Pricing
ATG Framework,Formhandlers,PricingATG Framework,Formhandlers,Pricing
ATG Framework,Formhandlers,Pricing
praveen chinnam
 
Xbox one development kit
Xbox one development kitXbox one development kit
Xbox one development kit
rojizo frio
 
Oracle Endeca Developer's Guide
Oracle Endeca Developer's GuideOracle Endeca Developer's Guide
Oracle Endeca Developer's Guide
Keyur Shah
 
MSU - Strategc Organizational Leadership & Management
MSU - Strategc Organizational Leadership & ManagementMSU - Strategc Organizational Leadership & Management
MSU - Strategc Organizational Leadership & Management
Keyur Shah
 
ATG - Web Commerce @ Your Figertips
ATG - Web Commerce @ Your FigertipsATG - Web Commerce @ Your Figertips
ATG - Web Commerce @ Your Figertips
Keyur Shah
 
Oracle Commerce Using ATG & Endeca - Do It Yourself Series
Oracle Commerce Using ATG & Endeca - Do It Yourself SeriesOracle Commerce Using ATG & Endeca - Do It Yourself Series
Oracle Commerce Using ATG & Endeca - Do It Yourself Series
Keyur Shah
 
Achieving the Ultimate TTM with ATG
Achieving the Ultimate TTM with ATGAchieving the Ultimate TTM with ATG
Achieving the Ultimate TTM with ATG
Ernst de Haan
 
ATG - Common Terminologies
ATG - Common TerminologiesATG - Common Terminologies
ATG - Common Terminologies
Keyur Shah
 
ATG Commerce: Full Capabilities Overview
ATG Commerce: Full Capabilities OverviewATG Commerce: Full Capabilities Overview
ATG Commerce: Full Capabilities Overview
sobrien15
 
ATG Tutorials - Promotion.
ATG Tutorials - Promotion.ATG Tutorials - Promotion.
ATG Tutorials - Promotion.
Sanju Thomas
 
ATG - Commerce Service Center (CSC)
ATG - Commerce Service Center (CSC)ATG - Commerce Service Center (CSC)
ATG - Commerce Service Center (CSC)
Keyur Shah
 
ATG Product Modules [INTERESTING VIEW]
ATG Product Modules [INTERESTING VIEW]ATG Product Modules [INTERESTING VIEW]
ATG Product Modules [INTERESTING VIEW]
Keyur Shah
 
ATG Advanced Profile Management
ATG Advanced Profile ManagementATG Advanced Profile Management
ATG Advanced Profile Management
Kate Semizhon
 
Common mistakes for ATG applications that affect performance
Common mistakes for ATG applications that affect performanceCommon mistakes for ATG applications that affect performance
Common mistakes for ATG applications that affect performance
Kate Semizhon
 
Oracle ATG Commerce Overview for developers
Oracle ATG Commerce Overview for developers Oracle ATG Commerce Overview for developers
Oracle ATG Commerce Overview for developers
Kate Semizhon
 
Oracle Endeca Commerce - Installation Guide
Oracle Endeca Commerce - Installation GuideOracle Endeca Commerce - Installation Guide
Oracle Endeca Commerce - Installation Guide
Keyur Shah
 
Accessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup WebinarAccessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup Webinar
Keyur Shah
 
ATG Framework,Formhandlers,Pricing
ATG Framework,Formhandlers,PricingATG Framework,Formhandlers,Pricing
ATG Framework,Formhandlers,Pricing
praveen chinnam
 
Xbox one development kit
Xbox one development kitXbox one development kit
Xbox one development kit
rojizo frio
 
Oracle Endeca Developer's Guide
Oracle Endeca Developer's GuideOracle Endeca Developer's Guide
Oracle Endeca Developer's Guide
Keyur Shah
 
MSU - Strategc Organizational Leadership & Management
MSU - Strategc Organizational Leadership & ManagementMSU - Strategc Organizational Leadership & Management
MSU - Strategc Organizational Leadership & Management
Keyur Shah
 
Ad

Similar to Overview of atg framework (20)

Adaptive Architecture
Adaptive ArchitectureAdaptive Architecture
Adaptive Architecture
Nick Harrison
 
Crafted Design - LJC World Tour Mash Up 2014
Crafted Design - LJC World Tour Mash Up 2014Crafted Design - LJC World Tour Mash Up 2014
Crafted Design - LJC World Tour Mash Up 2014
Sandro Mancuso
 
Design patterns
Design patternsDesign patterns
Design patterns
revamptechnologies
 
PPT on javascript ajax and css and some points related to server
PPT on javascript ajax and css and some points related to serverPPT on javascript ajax and css and some points related to server
PPT on javascript ajax and css and some points related to server
shivanichourasia01
 
Java TechTalk "Spring boot made life easier with Kubernetes and Microservices"
Java TechTalk "Spring boot made life easier with Kubernetes and Microservices"Java TechTalk "Spring boot made life easier with Kubernetes and Microservices"
Java TechTalk "Spring boot made life easier with Kubernetes and Microservices"
GlobalLogic Ukraine
 
Create an application with ember
Create an application with ember Create an application with ember
Create an application with ember
Chandra Sekar
 
MVC Demystified: Essence of Ruby on Rails
MVC Demystified: Essence of Ruby on RailsMVC Demystified: Essence of Ruby on Rails
MVC Demystified: Essence of Ruby on Rails
codeinmotion
 
Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014
Sandro Mancuso
 
Crafted Design - Sandro Mancuso
Crafted Design - Sandro MancusoCrafted Design - Sandro Mancuso
Crafted Design - Sandro Mancuso
JAXLondon2014
 
Oracle ADF Tutorial
Oracle ADF TutorialOracle ADF Tutorial
Oracle ADF Tutorial
Deepak Bhagat
 
Modern Database Development Oow2008 Lucas Jellema
Modern Database Development Oow2008 Lucas JellemaModern Database Development Oow2008 Lucas Jellema
Modern Database Development Oow2008 Lucas Jellema
Lucas Jellema
 
The Story of How an Oracle Classic Stronghold successfully embraced SOA (ODTU...
The Story of How an Oracle Classic Stronghold successfully embraced SOA (ODTU...The Story of How an Oracle Classic Stronghold successfully embraced SOA (ODTU...
The Story of How an Oracle Classic Stronghold successfully embraced SOA (ODTU...
Lucas Jellema
 
Mondrian - Geo Mondrian
Mondrian - Geo MondrianMondrian - Geo Mondrian
Mondrian - Geo Mondrian
Simone Campora
 
Ruby On Rails Siddhesh
Ruby On Rails SiddheshRuby On Rails Siddhesh
Ruby On Rails Siddhesh
Siddhesh Bhobe
 
Intro to mobile web application development
Intro to mobile web application developmentIntro to mobile web application development
Intro to mobile web application development
zonathen
 
C# .NET Developer Portfolio
C# .NET Developer PortfolioC# .NET Developer Portfolio
C# .NET Developer Portfolio
cummings49
 
Orchard
OrchardOrchard
Orchard
Kiev ALT.NET
 
Oleksandr Krakovetskyi - Orchard CMS
Oleksandr Krakovetskyi - Orchard CMSOleksandr Krakovetskyi - Orchard CMS
Oleksandr Krakovetskyi - Orchard CMS
Ciklum Ukraine
 
Developing Next-Gen Enterprise Web Application
Developing Next-Gen Enterprise Web ApplicationDeveloping Next-Gen Enterprise Web Application
Developing Next-Gen Enterprise Web Application
Mark Gu
 
Data Access Tech Ed India
Data Access   Tech Ed IndiaData Access   Tech Ed India
Data Access Tech Ed India
rsnarayanan
 
Adaptive Architecture
Adaptive ArchitectureAdaptive Architecture
Adaptive Architecture
Nick Harrison
 
Crafted Design - LJC World Tour Mash Up 2014
Crafted Design - LJC World Tour Mash Up 2014Crafted Design - LJC World Tour Mash Up 2014
Crafted Design - LJC World Tour Mash Up 2014
Sandro Mancuso
 
PPT on javascript ajax and css and some points related to server
PPT on javascript ajax and css and some points related to serverPPT on javascript ajax and css and some points related to server
PPT on javascript ajax and css and some points related to server
shivanichourasia01
 
Java TechTalk "Spring boot made life easier with Kubernetes and Microservices"
Java TechTalk "Spring boot made life easier with Kubernetes and Microservices"Java TechTalk "Spring boot made life easier with Kubernetes and Microservices"
Java TechTalk "Spring boot made life easier with Kubernetes and Microservices"
GlobalLogic Ukraine
 
Create an application with ember
Create an application with ember Create an application with ember
Create an application with ember
Chandra Sekar
 
MVC Demystified: Essence of Ruby on Rails
MVC Demystified: Essence of Ruby on RailsMVC Demystified: Essence of Ruby on Rails
MVC Demystified: Essence of Ruby on Rails
codeinmotion
 
Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014Crafted Design - ITAKE 2014
Crafted Design - ITAKE 2014
Sandro Mancuso
 
Crafted Design - Sandro Mancuso
Crafted Design - Sandro MancusoCrafted Design - Sandro Mancuso
Crafted Design - Sandro Mancuso
JAXLondon2014
 
Modern Database Development Oow2008 Lucas Jellema
Modern Database Development Oow2008 Lucas JellemaModern Database Development Oow2008 Lucas Jellema
Modern Database Development Oow2008 Lucas Jellema
Lucas Jellema
 
The Story of How an Oracle Classic Stronghold successfully embraced SOA (ODTU...
The Story of How an Oracle Classic Stronghold successfully embraced SOA (ODTU...The Story of How an Oracle Classic Stronghold successfully embraced SOA (ODTU...
The Story of How an Oracle Classic Stronghold successfully embraced SOA (ODTU...
Lucas Jellema
 
Mondrian - Geo Mondrian
Mondrian - Geo MondrianMondrian - Geo Mondrian
Mondrian - Geo Mondrian
Simone Campora
 
Ruby On Rails Siddhesh
Ruby On Rails SiddheshRuby On Rails Siddhesh
Ruby On Rails Siddhesh
Siddhesh Bhobe
 
Intro to mobile web application development
Intro to mobile web application developmentIntro to mobile web application development
Intro to mobile web application development
zonathen
 
C# .NET Developer Portfolio
C# .NET Developer PortfolioC# .NET Developer Portfolio
C# .NET Developer Portfolio
cummings49
 
Oleksandr Krakovetskyi - Orchard CMS
Oleksandr Krakovetskyi - Orchard CMSOleksandr Krakovetskyi - Orchard CMS
Oleksandr Krakovetskyi - Orchard CMS
Ciklum Ukraine
 
Developing Next-Gen Enterprise Web Application
Developing Next-Gen Enterprise Web ApplicationDeveloping Next-Gen Enterprise Web Application
Developing Next-Gen Enterprise Web Application
Mark Gu
 
Data Access Tech Ed India
Data Access   Tech Ed IndiaData Access   Tech Ed India
Data Access Tech Ed India
rsnarayanan
 
Ad

Recently uploaded (20)

Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
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
 
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
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
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
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
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
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
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
 
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
 
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
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
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
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
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
 
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
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
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
 
Big Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur MorganBig Data Analytics Quick Research Guide by Arthur Morgan
Big Data Analytics Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
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
 
Procurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptxProcurement Insights Cost To Value Guide.pptx
Procurement Insights Cost To Value Guide.pptx
Jon Hansen
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
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
 
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
 
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
 
What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...What is Model Context Protocol(MCP) - The new technology for communication bw...
What is Model Context Protocol(MCP) - The new technology for communication bw...
Vishnu Singh Chundawat
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
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
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 

Overview of atg framework

  • 2. AGENDA What is E-Commerce & m-commerce Different frameworks/platforms providing e-commerce solutions Overview of Oracle ATG Different modules provided by Oracle ATG Commerce Nucleus Different Oracle ATG Components
  • 3. E-COMMERCE & M-COMMERCE Distributing, Buying, Selling and marketing products and services over internet through which transaction or terms of sale are performed electronically. Types of E-Commerce  B2B(Applies to businesses buying from and selling to each other. E.g. Walmart)  B2C(Applies to business that sells its products or services to consumers. E.g. flipkart)  C2B(Applies to any consumer that sells a product or service to a business. )  C2C(Applies to sites primarily offering goods and services to assist consumers interacting with each other. E.g. olx)
  • 5. CONCEPTUAL VIEW OF E- COMMERCE
  • 6. FRAMEWORKS PROVIDING E- COMMERCE SOLUTIONS Oracle ATG Commerce SAP Hybris IBM WCS Magneto
  • 7. ART TECHNOLOGY GROUP (ATG) Web Commerce Application Highly scalable and flexible component-based architecture. E-commerce software solutions & On-demand commerce optimization applications. Co-founded by Jeet Singh & Joseph Chung in 1991. ATG’s solutions provide merchandising, marketing, content personalization, automated recommendations. Acquired by Oracle in 2005. The latest version of Oracle ATG Commerce is 11, which includes the integration support of REST MVC framework, Endeca Experience Manager.
  • 8. ATG PLATFORM ATG platform is built on “layered” and “modular” approach. ATG Web Commerce applications implement a component development model based on Java Beans and JSP The core of ATG platform is it’s Application framework i.e. Dynamo Application Framework (DAF). DAF runs on top of the application server (like weblogic, websphere etc..) and provides essential facilities for application development and deployment.
  • 9. ARCHITECTURE OF ORACLE ATG BASED APPLICATION.
  • 10. APPLICATIONS IN ORACLE COMMERCE Commerce Personalization Merchandising Business Control Center Customer Service Center Endeca Commerce & Experience Manager
  • 12. DIFFERENT MODULES AVAILABLE IN ATG DPS  Personalization module  Used to create and maintain user profiles  User specific business rules DCS  Core Commerce Module  Provides the commerce capabilities like Shopping Cart, Order Purchase & Checkout.
  • 13. CONTD.. DSS  Extends the targeting capabilities of DPS  Scenarios are event driven  Designed to manage interaction between the site visitor and content DCC  Provides developer with the tool “ACC” B2BCommerce B2CCommerce DCS.CustomCatalogs Fulfillment DAS-UI
  • 14. KEY CONCEPTS Component Centric Model MVC2 framework Dependency Injection Modular approach Data Anywhere Architecture (Similar to ORM)
  • 15. COMPONENT DEVELOPMENT MODEL What is a Component? Examples of Component Architecture  Microsofts COM/DCOM  Java Beans  CORBA Benefits of Component Development Model  Code Reusability  Reduced Development time  Continuous, Incremental improvements
  • 16. COMPONENT IN ATG Any simple Java Class can be treated as a “Component”. To define a component in ATG, we need to create .properties file in the corresponding config directory. E.g. public class MyComponent{ } -> src/com/dev/MyComponent.java Create a .properties file in the corresponding config directory i.e. config/com/dev/MyComponent.properties The properties file contains the class name and the scope of the component (request/session/global)
  • 17. DYNAMO APPLICATION FRAMEWORK DAF is the core of Oracle ATG Web Commerce It runs on top of the application server It provides a Component Development Environment. Supplies essential facilities for application development and deployment  Nucleus  Repositories  Droplets  FormHandlers  Tag Libraries
  • 18. NUCLEUS Dynamo’s Open Object Framework Central registry for the java beans which contains our application level logic. Creates and configures the components Organizes them into a hierarchical namespace
  • 19. FORM HANDLER Specialized Nucleus Components Can be embedded into JSPs to do form validation and based on the result perform actions like submitting user data, forwarding the user to some other pages Form handler components have handleXXX() methods, which takes care of appropriate handler logic based on user action. Some of the mostly used OOTB form handlers are ProfileFormHandler, CartModifierFormHandler, CommitOrderFormHandler etc..
  • 20. DROPLET Specialized Nucleus components which are used to display dynamic content on the JSP pages Also known as “Dynamo Servlet Beans” Java Developers and Page designers can work independently and applications are easier to maintain OOTB droplets are ItemLookupDroplet, ForEach, Switch etc..
  • 21. REPOSITORIES Data Access layer that defines generic representation of data store Data Anywhere Architecture (DAA) provides a unified view of content and data Core of DAA is “Repository API” Using Repository API, we can employ a single approach to accessing different data types, including SQL databases, LDAP directories, content management systems and file systems
  • 22. HIGH LEVEL OVERVIEW OF DAA Advantages  Data Source Independence  Maximum Performance  Simplified transactional control  Fine-grained Access Control
  • 23. TAG LIBRARIES Earlier the presentation language used is “JHTML” JHTML has lots of custom tags to access Dynamo Components JSP became the defacto language for Presentation tier Introduced to access Nucleus components and render dynamic content from JSP files Example tags include <dsp:form>, <dsp:input>,<dsp:valueof>, <dsp:a>, <dsp:getvalueof> etc..
  • 24. DROPLETS To display the dynamic content on JSP pages using nucleus components. We can embed the output of a nucleus component using dsp tag libraries e.g. <dsp:droplet name=“/atg/dynamo/ForEach> <dsp:param name=“array” bean=“/com/sample/Student.subjects/> <dsp:oparam name=“output”> <dsp:valueof param=“element”/> </dsp:oparam>
  • 25. CONTD… Each droplet has a predefined set of parameters that control it’s behavior  Input  Output  Open Input parameters are passed into the droplet e.g. <dsp:param name=“array” bean=“/com/sample/Student.subjects/> Output parameters are set by the droplet e.g. <dsp:valueof param=“element”/> Open parameters specify code to execute at different stages of servlet processing Content that needs to be displayed before output is displayed using outputStart <dsp:oparam name=“outputStart”> …. </dsp:oparam> <dsp:oparam name=“output”>……</dsp:oparam> Content that needs to be displayed before output is displayed using
  • 26. CONTD.. Some of the OOTB droplets <dsp:droplet name=“atg/dynamo/droplet/foreach”> <dsp:droplet name=“atg/dynamo/droplet/switch”> <dsp:droplet name=“atg/dynamo/droplet/empty”> <dsp:droplet name=“atg/commerce/catalog/ProductLookup”>
  • 27. FORM HANDLERS Evaluates the form data before it is submitted, check for errors, and determine what action to take. The form input fields are associated with the properties of the form handler rather than the component that we want to modify E.g. <dsp:input type=“text” bean=“MyFormHandler.age”> Form Handler must include one or more handler methods, to handle the processing of the form.
  • 28. CONTD… Handler methods links form elements with Nucleus components Signature of the handler method Public boolean handleXXX(DynamoHttpServletRequest req, DynamoHttpServletResponse res){ ---- } Action based on return valueReturn Value Action false No further values are processed after the handler is called. Rest of the page is not served. true Normal processing of the form values continues Page specified by the form’s action attribute is served.
  • 29. CONTD... Sample Jsp file showing form data <dsp:form action=“SaveData”> <dsp:input type=“text” value=“jeet” bean=“MyFormHandler.firstName” /> <dsp:input type=“text” value=“singh” bean=“MyFormHandler.firstName” /> <dsp:input type=“submit” value=“Save” bean=“MyFormHandler.save”/> <dsp:input type=“cancel” value=“Reset” bean=“MyFormHandler.cancel” /> </dsp:form>
  • 30. CONTD… public class MyFormHandler extends GenericFormHandler{ private String firstName; private String lastName; public boolean handleSave(DynamoHttpServletRequest req, DynamoHttpServletResponse res){ return true/false;} public boolean handleCancel(DynamoHttpServletRequest req, DynamoHttpServletResponse res){ return true/false;} ….. ….. }
  • 31. CONTD… MyFormHandler.properties $class=MyFormHandler -> Fully Qualified Class Name $scope=request -> how the class instance will behave age=25 -> form handler property. We have to provide as name value pairs. subjects= java,atg,openapi prop1^=MyOtherFormHandler.prop1
  • 32. SCOPE OF THE COMPONENTS •Scope specifies how the nucleus component is used among different users. •We specify the scope of the component in .properties file •Available scopes • Global: shared among all the users (default) • Session: for each user session a separate instance will be provided • Request: for each active request a separate instance will be provided • Window: for each browse window a separate instance will be provided • Prototype: every time the component is resolved separate instance of the components will be provided