WebCenter Sites Avanzado_v2.ppt

130
1 | © 2011 Oracle Corporation – Proprietary and Confidential Taller Avanzado WebCenter Sites Carlos Picazo – Principal Sales Consultant

Transcript of WebCenter Sites Avanzado_v2.ppt

Page 1: WebCenter Sites Avanzado_v2.ppt

1 | © 2011 Oracle Corporation – Proprietary and Confidential

Taller Avanzado WebCenter Sites

Carlos Picazo – Principal Sales Consultant

Page 2: WebCenter Sites Avanzado_v2.ppt

2 | © 2011 Oracle Corporation – Proprietary and Confidential

09:00 – 09:30 Bienvenida y registro. 09:30 – 10:00 Repaso de funcionalidades de WebCenter Sites.10:00 – 11:00 Arquitectura y Escalabilidad.11:00 – 11:30 Café.11:30 – 12:30 Modelo de datos y plantillas de contenido.12:30 – 13:00 Page Layout & Insite Edit (How to) 13:00 – 13:30 Personalización (How to)13:30 – 14:00 Gadgets/Community/Mobility (How to)14:00 – 15:00 Comida. 15:00 – 17:00 Talleres técnicos de desarrollo.17:00 – 17:30 Q&A

Agenda

Page 3: WebCenter Sites Avanzado_v2.ppt

3 | © 2011 Oracle Corporation – Proprietary and Confidential

PRIMER PASO: PRESENTACIONES

Page 4: WebCenter Sites Avanzado_v2.ppt

4 | © 2011 Oracle Corporation – Proprietary and Confidential

Who are you?

What do you do?

What do you expect from this course?

Something interesting about yourself..

Presentaciones

Page 5: WebCenter Sites Avanzado_v2.ppt

5 | © 2011 Oracle Corporation – Proprietary and Confidential

What’s on the disk?

• Copy all the files somewhere

• Expand wemdemo_avisports.rar, jdk1.6.0_16.zip and cosgas.zip to C:\Kits

Page 6: WebCenter Sites Avanzado_v2.ppt

6 | © 2011 Oracle Corporation – Proprietary and Confidential

09:30 – 10:00 REPASO DE FUNCIONALIDADES

Page 7: WebCenter Sites Avanzado_v2.ppt

7 | © 2011 Oracle Corporation – Proprietary and Confidential

Best-in-class WCM FoundationBuilt for business users, scales to enterprise deployments

• Business user tools for content editing & site management

• Large-scale product information management

• Scalable dynamic delivery for targeted & multi-lingual/locale content

• Streamlined management of multiple sites / large deployments

• Rich media management for the Web

Page 8: WebCenter Sites Avanzado_v2.ppt

8 | © 2011 Oracle Corporation – Proprietary and Confidential

Mobile Channel Enablement

• Reuse content & edit navigation from traditional website

• OOTB mobile templates by device family• Edit mobile sites & traditional website from

same business user interface• Device-based preview• Automatic transformation of content & site

layout for thousands of device types• Location-based services• Comprehensive video & rich media support

Reach out to additional online channels with quality, flexibility and ease

Page 9: WebCenter Sites Avanzado_v2.ppt

9 | © 2011 Oracle Corporation – Proprietary and Confidential

Customer Segmentation & Targeting

• Flexible rules engine for creation of customer segments & recommendations

• Enables delivery of targeted content & campaigns

• Segmentation based on implicit (behavioral) and/or explicit (known user or characteristics) criteria

• Enables granular targeting based on membership in multiple segments

FatWire

Deliver a targeted, sticky and persuasive experience online

Page 10: WebCenter Sites Avanzado_v2.ppt

10 | © 2011 Oracle Corporation – Proprietary and Confidential

Analytics for Content Optimization

• Track aggregate usage of content assets across pages & sites

• Track effectiveness of targeted site content for user segments

• Visualize results with in-context reporting

• Understand site usage via behavior tracking

• Access comprehensive reports or create your own

Granular analytics & optimization for marketers and content managers

Page 11: WebCenter Sites Avanzado_v2.ppt

11 | © 2011 Oracle Corporation – Proprietary and Confidential

Social Computing

• Add Social Computing around your website:• Commenting, rating, reviews, blogs• Business user administration &

moderation of UGC• Enable UGC to drive the content of

dynamic sites

Interactive and Social online experiences for site visitors

Page 12: WebCenter Sites Avanzado_v2.ppt

12 | © 2011 Oracle Corporation – Proprietary and Confidential

• End-user personalization using gadget dashboards on web pages

• Quickly create new gadgets out-of-the-box

• Gadget syndication for use on third-party Websites

Provide dashboards and reach out to your visitors through gadgetsEnd-User Personalisation & Syndication

Page 13: WebCenter Sites Avanzado_v2.ppt

13 | © 2011 Oracle Corporation – Proprietary and Confidential

• Distributed edge caching

• Dynamic assembly and delivery

• High performance, automated management

• Scalable to the demands of the highest-traffic websites

High Performance websites with Satellite ServerHigh-performance and scalable delivery of dynamic sites

Page 14: WebCenter Sites Avanzado_v2.ppt

14 | © 2011 Oracle Corporation – Proprietary and Confidential

Copyright 2011 FatWire Corporation – Under NDA

Content Integration Platform

• Puts content from enterprise systems at the fingertips of FatWire Content Server users

• Content flagged for sharing is made accessible directly in the FatWire user interface

• Workflow and change notifications for shared content

• Source content remains the master

• SOA architecture

• Open and extensible

Enterprise Content Integration for the Web

Page 15: WebCenter Sites Avanzado_v2.ppt

15 | © 2011 Oracle Corporation – Proprietary and Confidential

Web Experience Management

• Eliminate IT bottleneck

• Empower business users

– Author content in context

– Design site layout

• Automatic conversion & publish to Web

• Separate code from content

Interact &Moderate

With WebCenter Sites

Page 16: WebCenter Sites Avanzado_v2.ppt

16 | © 2011 Oracle Corporation – Proprietary and Confidential

Web Experience Management

• Relevant Customer Content

– Targeted material and messages that drive customer retention and loyalty

– Segment audiences and deliver personalized promotions, turning online browsers to buyers

– Multi site / multi language

• Understanding your results

– Integrated analytics

Interact &Moderate

With WebCenter Sites

Page 17: WebCenter Sites Avanzado_v2.ppt

17 | © 2011 Oracle Corporation – Proprietary and Confidential

Web Experience Management

• Build Community Engagement– Encourage community interaction

between customers and the company

– Increase customer loyalty with ongoing communications through social networks

• Drive Site Stickiness and Loyalty– Quickly create gadgets for use in

company web sites and on third-party sites across mobile and social channels

– Dynamic delivery for targeted marketing and multi-lingual content

Interact &Moderate

With WebCenter Sites

Page 18: WebCenter Sites Avanzado_v2.ppt

18 | © 2011 Oracle Corporation – Proprietary and Confidential

10:00 – 10:30 ARQUITECTURA Y ESCALABILIDAD

Page 19: WebCenter Sites Avanzado_v2.ppt

19 | © 2011 Oracle Corporation – Proprietary and Confidential

Content Managers

Gadget Server

Community Server

WebCenter Sites

Engage

…W

EM

F

ram

ew

ork

Documentum SharePoint File System …

SiteVisitors

Mobile Delivery

Satellite Server

AnalyticsContent Integration Platform

WE

M

Fra

me

wo

rk

Gadget Server

Community Server

WebCenter Sites

Engage

Mobility ServerMobility Server

DeliveryManagement

WebCenter Sites’ Server (WCM Foundation)formerly Content Server

Page 20: WebCenter Sites Avanzado_v2.ppt

20 | © 2011 Oracle Corporation – Proprietary and Confidential

Core WebCenter Sites Architecture

DatabaseDatabase

Content ServicesContent Services

Asset FrameworkAsset Framework

Authentication, Authorization and SSOAuthentication, Authorization and SSO

APIAPI

File SystemFile System

User InterfaceUser Interface

Database and File System AbstractionCatalog ManagementCache ManagementDependency Management

Page ServerImage ServerEvent Management

Asset ManagersRevision TrackingSearchImport / Export

ApprovalPublishingWorkflowTemplating Engine

JSP/XML Java REST and SOAP

Business User Admin PortalContent Editors

Page 21: WebCenter Sites Avanzado_v2.ppt

21 | © 2011 Oracle Corporation – Proprietary and Confidential

Multi-Site Management• WebCenter Sites provides a single solution to manage multiple sites

• Site Launcher can quickly replicate one site from another (copy/share)

• A ‘Site’ is a logical unit in WebCenter Sites – Micro-Site, Campaign Site, fully fledged Website

• A site skeletal owns components such as Assets, Templates, Workflows etc

• Content Owners ‘login’ to a Site and have visibility to contents of only that site

• Common components can be shared between sites

WebCenter Sites

www.oracle.com www.oracle.comSite1 Assets, Templates, Users

Site1 Assets, Templates, Users

Site2 Assets, Templates, Users

Site2 Assets, Templates, Users

Site3 Assets, Templates, Users

Site3 Assets, Templates, Users

SITE 1 - Users

SITE 2 - Users

SITE 3 - Users

www.oracle.com/openworldwww.oracle.com/openworld

www.oracle.com/fatwire www.oracle.com/fatwire

REPLICATE

Page 22: WebCenter Sites Avanzado_v2.ppt

22 | © 2011 Oracle Corporation – Proprietary and Confidential

Workflow

STARTProcess Action

State 1END

State 2 State 3

Step 1 Step 2 Step 3 Step 4

State Deadline

Step Condition Step Action

Deadline Action

User Assignment 3

User Assignment 4User Assignment 2

User Assignment 1

Assignment Action

DelegateAction

Deadlock Action

Step 4

DelegateAbstain

Finish Assignment

ProcessDeadlineRoles

Dead Lock

Page 23: WebCenter Sites Avanzado_v2.ppt

23 | © 2011 Oracle Corporation – Proprietary and Confidential

Approval and Publishing

WebCenter SitesTarget WebCenter Site(s) 1

Target WebCenter Site(s) 2

File System

Destination 1Dependencies

Destination 2Dependencies

Destination 3DependenciesUser approves Asset for

Publishing to Destination (s)

All dependences of the Asset are also published to keep the integrity of data intact

ASSET

Page 24: WebCenter Sites Avanzado_v2.ppt

24 | © 2011 Oracle Corporation – Proprietary and Confidential

Search

WE

M

Fra

me

wo

rk

Web ContentWeb Content Web ContentWeb Content

Management Delivery

PublishWebCenter Sites WebCenter Sites

WE

M

Fra

me

wo

rk SearchFramework & API

SearchFramework & API

Search Indices Search Indices

User Interfaces

Site Search

Java API

WEM AppWEM App

REST API Java API REST API

Page 25: WebCenter Sites Avanzado_v2.ppt

25 | © 2011 Oracle Corporation – Proprietary and Confidential

Satellite Server

Content Managers

Gadget Server

Community Server

WebCenter Sites

Engage

…W

EM

F

ram

ew

ork

Documentum SharePoint File System …

SiteVisitors

Mobile Delivery

Satellite Server

AnalyticsContent Integration Platform

WE

M

Fra

me

wo

rk

Gadget Server

Community Server

WebCenter Sites

Engage

Mobility ServerMobility Server

DeliveryManagement

Page 26: WebCenter Sites Avanzado_v2.ppt

26 | © 2011 Oracle Corporation – Proprietary and Confidential

Satellite Server – standard request

Content Repository

• Is page in cache??

Page 27: WebCenter Sites Avanzado_v2.ppt

27 | © 2011 Oracle Corporation – Proprietary and Confidential

Satellite Server – business user publishes content

• Is page in cache?• Get cached components• Get new component• Compose page from cache components

Publish

Invalidate/Refresh cache

Content Repository

?

Page 28: WebCenter Sites Avanzado_v2.ppt

28 | © 2011 Oracle Corporation – Proprietary and Confidential

Horizontal Scalability

• WebCenter Sites deployments scale out by the use of Satellite Servers

• Satellite Servers are edge caching systems, fully integrated into the content workflow

Load BalancerLoad Balancer WEBWEB

Satellite Servers

WebCenter Sites

Page 29: WebCenter Sites Avanzado_v2.ppt

29 | © 2011 Oracle Corporation – Proprietary and Confidential

Vertical Scalability

• WebCenter Sites and Satellite Server are standard J2EE applications

• Both scale well under application server clusters

• Multiple instances can be run on the same hardware

Load BalancerLoad Balancer WEBWEB

Satellite ServersWebCenter Sites

Page 30: WebCenter Sites Avanzado_v2.ppt

30 | © 2011 Oracle Corporation – Proprietary and Confidential

Content Managers

Gadget Server

Community Server

WebCenter Sites

Engage

…W

EM

F

ram

ew

ork

Documentum SharePoint File System …

SiteVisitors

Mobile Delivery

Satellite Server

AnalyticsContent Integration Platform

WE

M

Fra

me

wo

rk

Gadget Server

Community Server

WebCenter Sites

Engage

Mobility ServerMobility Server

DeliveryManagement

Targetingformerly Engage

Page 31: WebCenter Sites Avanzado_v2.ppt

31 | © 2011 Oracle Corporation – Proprietary and Confidential

Engage UI

Visitor Attributes

Visitor Attributes

Visitor Data ManagerVisitor Data Manager

Visitor Data

External Systems

Rules EngineRules Engine

Asset Repository

RecommendationsPromotionsCross/up sells

History Attributes

History Attributes

SegmentsSegmentsSegmentsSegments

SegmentsSegmentsQualifying Segments

Qualifying Segments

SegmentsSegmentsSegmentsSegments

SiteVisitors

Marketers

Recommendations

Targetingformerly Engage

Page 32: WebCenter Sites Avanzado_v2.ppt

32 | © 2011 Oracle Corporation – Proprietary and Confidential

Content Managers

Gadget Server

Community Server

WebCenter Sites

Engage

…W

EM

F

ram

ew

ork

Documentum SharePoint File System …

SiteVisitors

Mobile Delivery

Satellite Server

AnalyticsContent Integration Platform

WE

M

Fra

me

wo

rk

Gadget Server

Community Server

WebCenter Sites

Engage

Mobility ServerMobility Server

DeliveryManagement

Analyticsformerly Content Optimizer

Page 33: WebCenter Sites Avanzado_v2.ppt

33 | © 2011 Oracle Corporation – Proprietary and Confidential

Data AnalysisData Analysis

WebsiteWebsite

Aggregated Data Drill Down Reports

DBMS

Aggregated Data Drill Down Reports

DBMSSiteVisitors

Marketers

Distributed File System (HDFS) Map-Reduce

Process Queue

Sensor

Analyticsformerly Content Optimizer

Data is aggregated daily

Page 34: WebCenter Sites Avanzado_v2.ppt

34 | © 2011 Oracle Corporation – Proprietary and Confidential

Content Managers

Gadget Server

Community Server

WebCenter Sites

Engage

…W

EM

F

ram

ew

ork

Documentum SharePoint File System …

SiteVisitors

Mobile Delivery

Satellite Server

AnalyticsContent Integration Platform

WE

M

Fra

me

wo

rk

Gadget Server

Community Server

WebCenter Sites

Engage

Mobility ServerMobility Server

DeliveryManagement

Social & User-Generated Content (UGC)formerly Community Server

Page 35: WebCenter Sites Avanzado_v2.ppt

35 | © 2011 Oracle Corporation – Proprietary and Confidential

WE

M

Fra

mew

ork

Web ContentWeb Content

UI Framework

Web ContentWeb Content

Web Site

Moderation and Administration

Moderation and Administration

Comments, Ratings, Reviews,…

Comments, Ratings, Reviews,…

Management Delivery

Contributors,Administrators Visitors

Publish

REST

SSOSSO

WebCenter Sites WebCenter Sites

RESTWE

M

Fra

mew

ork

UGC data and moderation changes

Pages that contain comments, layout and settings for comments/ratings

Social & User-Generated Content (UGC)formerly Community Server

Page 36: WebCenter Sites Avanzado_v2.ppt

36 | © 2011 Oracle Corporation – Proprietary and Confidential

Content Managers

Gadget Server

Community Server

WebCenter Sites

Engage

…W

EM

F

ram

ew

ork

Documentum SharePoint File System …

SiteVisitors

Mobile Delivery

Satellite Server

AnalyticsContent Integration Platform

WE

M

Fra

me

wo

rk

Gadget Server

Community Server

WebCenter Sites

Engage

Mobility ServerMobility Server

DeliveryManagement

Gadgets formerly Gadget Server

Page 37: WebCenter Sites Avanzado_v2.ppt

37 | © 2011 Oracle Corporation – Proprietary and Confidential

WE

M

Fra

mew

ork

Web ContentWeb Content

UI Framework

Web ContentWeb Content

Web Site

Gadget Lists and Dashboard

Gadget Lists and Dashboard

Gadget ContainerGadget Container

Management Delivery

Contributors,Administrators Visitors

Publish

REST

SSOSSO

WebCenter Sites WebCenter Sites

RESTWE

M

Fra

mew

ork

Composed dashboard(s), white list of gadgets, settings

Pages Containing Dashboard(s)

Gadgets formerly Gadget Server

Page 38: WebCenter Sites Avanzado_v2.ppt

38 | © 2011 Oracle Corporation – Proprietary and Confidential

Content Managers

Gadget Server

Community Server

WebCenter Sites

Engage

…W

EM

F

ram

ew

ork

Documentum SharePoint File System …

SiteVisitors

Mobile Delivery

Satellite Server

AnalyticsContent Integration Platform

WE

M

Fra

me

wo

rk

Gadget Server

Community Server

WebCenter Sites

Engage

Mobility ServerMobility Server

DeliveryManagement

ECM Integrationformerly Content Integration Platform

Page 39: WebCenter Sites Avanzado_v2.ppt

39 | © 2011 Oracle Corporation – Proprietary and Confidential

Runtime

Plugins & Data Mappings

DocumentumDocumentumFatWire WebCenter Sites

Connectors

Documentum SharePoint File System ContentServer

Scheduler

Event

ECM Integrationformerly Content Integration Platform

Page 40: WebCenter Sites Avanzado_v2.ppt

40 | © 2011 Oracle Corporation – Proprietary and Confidential

Available APIs

Reading APIs

– XML tags

– JSP tags

– Asset API

– REST API

– SOAP

Writing APIs

• XML tags

• JSP tags

• Asset API

• REST API

• XMLpost

• BulkLoader

• CIP (Content Integration Platform)

Page 41: WebCenter Sites Avanzado_v2.ppt

41 | © 2011 Oracle Corporation – Proprietary and Confidential

Core Concept #1: Sites is comprised two PROD environments

Publish

Page 42: WebCenter Sites Avanzado_v2.ppt

42 | © 2011 Oracle Corporation – Proprietary and Confidential

Core Concept #2: Everything is modeled in the database

• There are no folders

• There are no files

• All webpages are served via the ContentServer servlet

• Each assettype has its own “schema”

• You design the asset model to match the business requirements of your client

Page 43: WebCenter Sites Avanzado_v2.ppt

43 | © 2011 Oracle Corporation – Proprietary and Confidential

Core Concept #3:Publishing is “smart”

• One migrates content via Sites’ Publishing feature

• Sites uses its own protocol wrapped inside of http

• It is *NOT* database to database

• Publishing queues are called “destinations”

• Publishing/approval is inherently incremental

• Queues are transactional, thus all items in the queue have had their dependencies evaluated recursively – failure of one item in the list invalidates the entire list

• The reason for this evaluation is to eliminate broken links

Page 44: WebCenter Sites Avanzado_v2.ppt

44 | © 2011 Oracle Corporation – Proprietary and Confidential

Types of Managed Content ObjectsAll are client-specific and need to be architected

• Basic Assets– Simple row/column structure– One record per asset– Attributes = columns– More scalable, less flexible

• Flex Assets– Multiple values, multiple inheritance– Flexible changes possible post go-live without schema changes– Multiple records per asset– Attributes = rows– More flexible, less scalable

Page 45: WebCenter Sites Avanzado_v2.ppt

45 | © 2011 Oracle Corporation – Proprietary and Confidential

Types of Managed List Objectsmany different types, each with pros and cons

• Named Association

• Attribute of Type Asset

• Recommendation

• SitePlan

• Translation

Page 46: WebCenter Sites Avanzado_v2.ppt

46 | © 2011 Oracle Corporation – Proprietary and Confidential

Other Types of Asset ObjectsAll are client-specific and need to be architected

• Core/Structural Assets– Page– Dimensionsets (locales)– Flex Definitions– Attributes

• Code/Logic Assets– Templates– CSElements– Filters– Attribute Editors– Query

Page 47: WebCenter Sites Avanzado_v2.ppt

47 | © 2011 Oracle Corporation – Proprietary and Confidential

Many ways to design the flex modelThere is no “cookie cutter” asset model

• Flex Family (database level)– Single Family w/ Multiple Branches

– vs. Multiple Families w/ Single Branch

• Relationship of Assettypes to Definitions– Single Assettype Multiple Definitions

– vs. Single Assettype Single Definition

• Attribute Design– Required vs. Optional

– Attribute Editor Design

– Single value vs. Multiple values

– Attribute Inheritance

– Value type: string, text, integer, date, asset, etc.

Page 48: WebCenter Sites Avanzado_v2.ppt

48 | © 2011 Oracle Corporation – Proprietary and Confidential

When to consider Basic vs. Flex

Basic Flex

Uncached* Tag query More efficient Less efficient

Attribute Inheritance Not supported Supported

Attribute Editors Not supported Supported

Flex Filters Not Supported Supported

Hierarchical Organization Not Supported Supported

Multi-valued Attributes Not Supported Supported

Search SQL, Search Engine Search States, Search Engine

Associations** Named Associations, Dimensions

Named Associations, Dimensions,Parent/Child relationships, Asset Attribute

* When the resultset is cached, the “fetch” for either type would be approx the same** Attributes ‘inherited’ via Parent / Child flex relationships are faster to read than named associations or attributes of type asset

Page 49: WebCenter Sites Avanzado_v2.ppt

49 | © 2011 Oracle Corporation – Proprietary and Confidential

Additional Flex Features

• Ability to inherit attributes from parents– Useful for creating packages of attributes that don’t change

• Ability to easily add attribute editors– i.e. presentation logic in front of the database field

• Ability to implement flex filters– Java code the executes immediately before saving

• Works with Engage– Ability to set ratings

Page 50: WebCenter Sites Avanzado_v2.ppt

50 | © 2011 Oracle Corporation – Proprietary and Confidential

Webpage Template Architecturedirectly affects performance and scalability

• Rule of 8: best to have no more than 6-8 pagelets per webpage

• Each pagelet is its own http request

Page 51: WebCenter Sites Avanzado_v2.ppt

51 | © 2011 Oracle Corporation – Proprietary and Confidential

Webpage Template Architecturedirectly affects performance and scalability

• Webpage should be made up of “pagelets”

• Each pagelet has its own request and is thus cacheable independent of the calling page

• Each pagelet request has its cache arguments – this is what makes it unique

• Each pagelet also has logged dependencies – this is how the system knows when to uncache it

• The trick is reusability – the main benefit of caching

• Biggest issues: too little caching and too much caching

Page 52: WebCenter Sites Avanzado_v2.ppt

52 | © 2011 Oracle Corporation – Proprietary and Confidential

Visitor Experience

• Speed is key for a good visitor experience – thus getting caching/uncaching optimized is a key deliverable

• A good asset model affects end-user experience in two ways: it facilitates “serendipitous” relationships between assets that can be MANAGED by editors

• And the asset model affects caching/uncaching (and thus performance)

• Getting it all right takes experience and skill

• But the benefit of getting it right is high-performance websites on a small hardware footprint

Page 53: WebCenter Sites Avanzado_v2.ppt

53 | © 2011 Oracle Corporation – Proprietary and Confidential

11:00 – 11:30 CAFÉ

Page 54: WebCenter Sites Avanzado_v2.ppt

54 | © 2011 Oracle Corporation – Proprietary and Confidential

Test your installation

• Navigate to C:\Kits\wemdemo

• Run ‘startFatWire.bat’

• Navigate to C:\Kits\cosgas

• Run the four .bat files (one by one)

• In a browser, navigate to http://localhost:7001/cs/login

• Login: admin/fwdemo1234

• Site: FS

• Test the applications

Page 55: WebCenter Sites Avanzado_v2.ppt

55 | © 2011 Oracle Corporation – Proprietary and Confidential

11:30 – 12:30 MODELO DE DATOS Y PLANTILLAS

Page 56: WebCenter Sites Avanzado_v2.ppt

56 | © 2011 Oracle Corporation – Proprietary and Confidential

Content Modeling - Assets

• Asset is the fundamental data structure in WebCenter Sites

• An Asset belongs to a Type

• Assets have attributes

• Attributes can be of many types (String, Number, File etc)

• Assets can be associated with other assets

• Assets can be enabled for sites

• Data for an Asset is stored in Database. Some attributes may be stored in File system

Type

Attributes

Associations

Site(s)

Asset

Page 57: WebCenter Sites Avanzado_v2.ppt

57 | © 2011 Oracle Corporation – Proprietary and Confidential

Content Modeling - Assets

• Site Architect defines Asset Types (using Advanced UI)– Example: An “Article” type, contains a title, body,

picture etc.

• Developer Builds Presentation templates– Summary Template

– Detail Template

• Business user creates Asset instances.– Title: Giants head to Super Bowl

– Body: .. What a match!..

– Picture: Eli-Manning.jpg

• Site visitor– Views the article

– Provides user generated content

Business User ASSET

Architect

Developer Site Visitor

CREATES DEFINES

VIEWSPRESENTATION

Page 58: WebCenter Sites Avanzado_v2.ppt

58 | © 2011 Oracle Corporation – Proprietary and Confidential

Assets/objetos PlantillasEditores de Atributos

Plain TextPlain Text

Atributos Sites Estilos

Rich TestRich Test

DateDate

NameName

TamañoTamaño

DescriptionDescription

FechaFecha

CostCost

AssetAsset ABCABC

ABCABC

ABCABC

NombreNombre

DescripcionDescripcion

PrecioPrecio

AttributeAttributeAttributeAttributeAttributeAttribute

AEAEAEAEAEAE

Texto planoTexto plano

WYSIWYGWYSIWYG

FechaFecha

ABCPlantillas Página

Plantillas AssetRepositorio de contenidos

ABC

123

Text

29.1.09

$

Modelo de contenidos: Potente y Flexible

Page 59: WebCenter Sites Avanzado_v2.ppt

59 | © 2011 Oracle Corporation – Proprietary and Confidential

Templating

• A template is an asset

• A template is a piece of code written in JSP, XML or HTML

• A template can be typed or un-typed.– Typed template is assigned to a an asset type, an un-typed template can be used with any asset

type

– A template is tasked with providing ‘view’ for a section of the page, for a specific asset type. A template can employ can use JavaBeans, asset APIs, tags and any other libraries

– Content Sever is also a ‘controller framework’ for templates

• Frameworks such as Struts, Spring MVC, JSF are possible using Java API

Page 60: WebCenter Sites Avanzado_v2.ppt

60 | © 2011 Oracle Corporation – Proprietary and Confidential

Lesson: Templates & Elements• WebCenter Sites uses two types of code assets:

– Template• Callable via http• Cacheable• Applicable to specific assettypes (typed)• or Applicable to any assettype (typeless)• Scope is always local• Previewable by selecting an asset and choosing “Preview”

– CSElement• Not directly callable via http• Not directly cacheable• Scope can be local, global, or stacked

Page 61: WebCenter Sites Avanzado_v2.ppt

61 | © 2011 Oracle Corporation – Proprietary and Confidential

Lesson: Templates & Elements

• Both Templates and Elements can be nested:– Nested Templates via the <render:calltemplate> tag– Nested Elements via the <render:callelement> tag

• Nested Templates are special: they can be cached independently of the calling page. We call them “pagelets”– Thus when a pagelet’s cache expires, only that pagelet refreshes but

*NOT* the outer calling Template!– This is the key to high performance cache in WebCenter Sites

• Note: Elements can be “wrapped” in a SiteEntry, making them cacheable (but we won’t explore that here)

Page 62: WebCenter Sites Avanzado_v2.ppt

62 | © 2011 Oracle Corporation – Proprietary and Confidential

Lesson: Templates & Elements

• A typical outer (page) template would make 6-8 calls to nested cached pagelets

• Each pagelet has its own cache criteria – this is what makes that instance of the cache unique

• Presumably, those pagelets would be reusable thus reducing coding time

• However, getting everything “just right” takes experience – it is easy to screw things up

• The most common problem is that clients either overcache or undercache (or both!) their pagelets

• Example: passing cid to the footer – why is that bad?

Page 63: WebCenter Sites Avanzado_v2.ppt

63 | © 2011 Oracle Corporation – Proprietary and Confidential

Teminology

• Wrapper– Store the logic (session, cookie, …)

• Layout (Typeless Template)– The layout of site or some part of the site

• Asset Type Template (Typed)– Template view/display for one Content

Page 64: WebCenter Sites Avanzado_v2.ppt

64 | © 2011 Oracle Corporation – Proprietary and Confidential

Typed versus Typeless Templates

/Layout

Containerfor Page

/Footer

/Layout

Containerfor Article

/Footer

URL : Layoutc=Pagecid=current page id

URL : Layoutc=Articlecid=current article id

<render:calltemplatec=Page

tname=Container

<render:calltemplatec=Articletname=Container<render:calltemplate

c=Pagetname=/Footer

<render:calltemplatec=Articletname=/Footer

Page 65: WebCenter Sites Avanzado_v2.ppt

65 | © 2011 Oracle Corporation – Proprietary and Confidential

Elements of the Wrapper template:

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="en">…..

Page 66: WebCenter Sites Avanzado_v2.ppt

66 | © 2011 Oracle Corporation – Proprietary and Confidential

Elements of the wrapper page

<render:satellitepage pagename='<%=ics.GetVar("childpagename")%>'>

<render:argument name='c' value='<%=ics.GetVar("c")%>'/>

<render:argument name='cid' value='<%=ics.GetVar("cid")%>'/>

<render:argument name='p' value='<%=ics.GetVar("p")%>' />

<render:argument name="locale" value='<%=ics.GetSSVar("preferred_locale")%>'/>

<render:argument name="packedargs" value='<%=ics.GetVar("packedargs")%>'/>

</render:satellitepage>

http://localhost:7001/cs/Satellite?c=Page&childpagename=FS%2FLayout&cid=1255731768473&pagename=FSWrapper&rendermode=previewnoinsite

Page 67: WebCenter Sites Avanzado_v2.ppt

67 | © 2011 Oracle Corporation – Proprietary and Confidential

FS/Layout template

• Site entry calls the /Layout template

String sContainerTName = "Container";<render:calltemplate tname='<%=sContainerTName%>' site='<%=sSite%>' tid='<%=ics.GetVar("tid")%>'

slotname="ArticleContainer" c='<%=ics.GetVar("c")%>' cid='<%=ics.GetVar("cid")%>' ttype="Template"> <render:argument name="p" value='<%=ics.GetVar("p")%>' /> <render:argument name="locale" value='<%=ics.GetVar("locale")%>'/> <render:argument name="packedargs" value='<%=ics.GetVar("packedargs")%>'/></render:calltemplate>

Page 68: WebCenter Sites Avanzado_v2.ppt

68 | © 2011 Oracle Corporation – Proprietary and Confidential

Page ContainerString sDetailTName = ics.GetVar("stype") + "Detail"; %><%-- Call the container template for the current page subtype --%><render:calltemplate tname='<%=sDetailTName%>' site='<%=ics.GetVar("site")%>' tid='<%=ics.GetVar("tid")%>' slotname="PageContainer" c='<%=ics.GetVar("c")%>' cid='<%=ics.GetVar("cid")%>' ttype="Template" context=""> <render:argument name="p" value='<%=ics.GetVar("p")%>' /> <render:argument name="locale" value='<%=ics.GetVar("locale")%>'/> <render:argument name="packedargs" value='<%=ics.GetVar("packedargs")%>'/></render:calltemplate>

Page 69: WebCenter Sites Avanzado_v2.ppt

69 | © 2011 Oracle Corporation – Proprietary and Confidential

12:30 – 13:00 PAGE LAYOUT & INSITE EDIT

Page 70: WebCenter Sites Avanzado_v2.ppt

70 | © 2011 Oracle Corporation – Proprietary and Confidential

Page Layouta.k.a PageBuilder or Graphical Layout

• Invoked via Preview/Insite Editing Interface

• Basic Concept:– Implement some page Templates with predefined “Slots”– Let users create NEW instances of Page assets, specifying a subtype that

corresponds to one of the above pre-configured templates– Once in Page Layout mode, users can search for different assettypes then

“drag /n drop” them into the slots– NOTE: “draggable” assets must have viable rendering templates.

Page 71: WebCenter Sites Avanzado_v2.ppt

71 | © 2011 Oracle Corporation – Proprietary and Confidential

Page LayoutAdding a slot to a Template

• Pretty simple :<insite:calltemplate

slotname = "MyUniqueSlotName" site = '<%=ics.GetVar("site")%>' tid = ‘<%=ics.GetVar("tid")%>' context = '<%=ics.GetVar("cid")%>'>

<render:argument name=“var" value=‘foo' />

.. .. ..

</insite:calltemplate>

Page 72: WebCenter Sites Avanzado_v2.ppt

72 | © 2011 Oracle Corporation – Proprietary and Confidential

InSite EditingWhat it is, what it does

• Tag library that developers use on their templates

• Enables contributors in-context editing of strings, dates and text fields

• Developers can optionally specify FCK Editor for “wysiwig” editing

• Also allows re-ordering of static lists

• Enabled by a property xcelerate.enableinsite=true– Must use “false” for delivery environments – why?

• Contributors must have the xceleditor ACL assigned to their user

• Asset’s permission is appropriate to the user’s Role

Page 73: WebCenter Sites Avanzado_v2.ppt

73 | © 2011 Oracle Corporation – Proprietary and Confidential

InSite EditingSome of the <insite:edit> tag arguments

• assetid (required)

– e.g: assetid ='<%=ics.GetVar("cid")%>'

• assettype (required)

– The asset type of the asset identified with the ASSETID parameter.

• assetfield (required)

– e.g: assetfield= "Attribute_byline"

• assetfieldvalue (required)

– e.g. assetfieldvalue= ='<%=ics.GetVar("Attribute_byline")%>'

• editor (optional)

– e.g editor=“fckeditor”

• width (optional), height (optional)

• etc.

Page 74: WebCenter Sites Avanzado_v2.ppt

74 | © 2011 Oracle Corporation – Proprietary and Confidential

InSite EditingThe <insite:edit> tag example

<insite:edit

assetid='<%=ics.GetVar("cid")%>'

assettype='<%=ics.GetVar("c")%>'

assetfield="Attribute_Title"

assetfieldvalue='<%=ics.GetVar(“Title")%>'

editor="text"

/>

The above is a typical usage in a JSP template

Page 75: WebCenter Sites Avanzado_v2.ppt

75 | © 2011 Oracle Corporation – Proprietary and Confidential

InSite EditingFor more reading

• Developer’s Guide (PDF)– Chapter 35: Coding for the InSite Editor

• User’s Guide (PDF)– Chapter 4: Page 95, Working with the InSite Interface

Page 76: WebCenter Sites Avanzado_v2.ppt

76 | © 2011 Oracle Corporation – Proprietary and Confidential

13:00 – 13:30 PERSONALIZACIÓN

Page 77: WebCenter Sites Avanzado_v2.ppt

77 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageSome Clients Currently Using CS Engage

• www.meyer.com

• www.bancsabadell.es

• www.tellmore.dk

• www.flmowner.com (a.k.a. “MyFord.com”)

• Most clients are very interested in CS Engage and it is cited as one of the main reasons for purchasing CS

• It really is neat! (and not all that complex to understand)

• In a cached state, it can be fast too.

Page 78: WebCenter Sites Avanzado_v2.ppt

78 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageThe Four Primary Components Of Engage:

1. Recommendation (a superset list of assets)

2. Segments based on AND/OR combination of Visitor Attributes and History Attributes

3. Visitor Attributes (and History Attributes)

4. Assets Rated or Ranked per Segment

Page 79: WebCenter Sites Avanzado_v2.ppt

79 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageSome Secondary Components Of Engage:

1. Related List (Contextual) Recommendations

2. History Attributes and History Definitions

3. Promotions– Time based– Discount based

• Note: we will not be going into any detail for the above components in this lesson

Page 80: WebCenter Sites Avanzado_v2.ppt

80 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageThe Basic Relationship of the Components:

• Visitor belongs to (via cookie values, session values, and/or Visitor data at login) one or more Segments

• Recommendation List contains list of Assets

• Each Asset in the List is Ranked per Segment

• Segment logic (i.e. what constitutes being in/out of segment) is controlled by Marketing people, not code

• RESULT: Visitor sees a subset of all possible Assets based on his/her Segment(s)

Page 81: WebCenter Sites Avanzado_v2.ppt

81 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageThe Key Thing Is Designing Your Segments FIRST

• There are plenty of white papers and companies that specialize in demographic data

• For example, ESRI’s Tapestry Segmentation divides U.S. residential areas into 65 distinctive segments based on socioeconomic and demographic characteristics to provide an accurate, detailed description of U.S. neighborhoods:– #18 – Cozy and Comfortable– #19 – Milk and Cookies– #20 – City Lights– #21 – Urban Villages– etc

Page 82: WebCenter Sites Avanzado_v2.ppt

82 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageOnce You Have Identified Your Segments...

…then you need to figure out how to parameterize them• Do your visitors require login?

• Do you need to support Anonymous visitors?

• Is the data available somewhere already?

• What data can you obtain for free? (e.g. Census data)

• What data can you purchase from a 3rd party?

• What data can you glean from visitors surfing your site? (e.g. what they put into their shopping carts)

• And finally, what is the relationship between Visitor Attributes and your Segments?

Page 83: WebCenter Sites Avanzado_v2.ppt

83 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageWhat You Want To Recommend Per Segment?

• Are you promoting Individual Articles?

• Groups of related Products?

• Are you trying to (up)sell something?

• Are you looking for a “random” result?

• Or just making the site “smarter” and more segment-appropriate for the visitor?

• Note: recommendations can even be used to change the “look and feel” of the webpages by loading different Stylesheet assets or different Layout components per segment

Page 84: WebCenter Sites Avanzado_v2.ppt

84 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageSegments Are Driven By 1..n Values

• Those values come either directly or indirectly from the current Visitor’s session

• Visitor Attribute values (stored in the VMVistorScalarValue table) generate one or more Segments

• e.g. visitor’s year of birth = 1956– Thus, Vistor Attribute YOB = 1956 scalar is set in code– Segment BabyBoomer is defined as: YOB “between” 1946-1961 – Thus Visitor’s Segment is BabyBoomer– And assets Rated highly for BabyBoomer will rise to the top of the Recommendation

list shown to this visitor

Page 85: WebCenter Sites Avanzado_v2.ppt

85 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageBasic Idea: Engage “Trims" an Existing List

• Trims the List based on Vistor's calculated Segment(s)

• Visitor may belong to more than one Segment

• List can come from anywhere:– Recommendation (static list)

– Recommendation (dynamic list)

– Recommendation (related list)

– Collection (using generic dynamic recommendation)

– NamedAssociation (using generic dynamic recommendation)

– SearchState (using a generic dynamic recommendation)

• Sort order is determined by the Recommendation itself– e.g. sort by Confidence

– e.g. sort by Rating

Page 86: WebCenter Sites Avanzado_v2.ppt

86 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageCoding Can Be VERY Simple for the Developer

<vdm:setscalar attribute=‘YOB' value='<%= ics.GetVar(“yob") %>' />

<vdm:setscalar attribute='MaritalStatus' value='<%= ics.GetVar("status") %>' />

<vdm:setscalar attribute='MedianIncome' value='<%= ics.GetVar("medianincome") %>' />

...

<commercecontext:calculatesegments />

<commercecontext:getsinglerecommendation

collection='HomepageRecommendation'

varname="assetid"

typevarname="assettype" />

<render:calltemplate

tname='FSIISummary'

site='<%=ics.GetVar("site")%>'

tid='<%=ics.GetVar("tid")%>'

slotname="RecommendationSummary"

c='<%=ics.GetVar("assettype")%>'

cid='<%=ics.GetVar("assetid")%>'

ttype="Template">

You will notice that the developer does not control what gets rendered

The logic comes from the Engage assets maintained by the marketers

No if/then/else code required!

Page 87: WebCenter Sites Avanzado_v2.ppt

87 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageLogin NOT Required: Segments are Driven by Values

Example of Anonymous segmentation:• Anonymous Visitor clicks checkout and is asked to type in their zipcode

• Zipcode database is referenced that returns two values:– State– Median Household Income for that Zipcode

• If State = MA, then Segment = NewEnglander

• If MedianHouseholdIncome = $90,000, then Segment = UpperMiddleClass

• When the visitor gets to his/her shopping cart, an Upsell Recommendation (or Promotion), trimmed by those Segments, is presented

Page 88: WebCenter Sites Avanzado_v2.ppt

88 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageAdvantages of Using the Static List Recommendation

• Ability to set the Confidence per asset

• Supports Heterogenous lists

• Only need to set Confidence per individual assets for the Segments you are interested in (i.e. you don’t need to see every segment unless you absolutely need to)

• You can avoid unknowndeps *IF* you specify:– Does not return children– Promotions cannot override

• Note: this is what AVI Sports uses

Page 89: WebCenter Sites Avanzado_v2.ppt

89 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageDisadvantages of Using Static List Recommendation

• Yet another asset to manage

• Has to be manually built and each item’s Confidence specified individually (i.e. it is not dynamic)

• You may want to restrict which assettypes can go into the list, but Recommendations allow anything to be added

• Confidences are local to the list and cannot be “shared” with another Recommendation list

• Will generate an unknowndeps *IF* you need to specify either:– Does return children– Promotions can override

Page 90: WebCenter Sites Avanzado_v2.ppt

90 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageAdvantages of Using Dynamic Recommendation

• Supports any kind of list whose name is "AssetList", whose columns are assettype and assetid, and whose children are flex assets

• Supports Heterogenous and Homogeneous lists

• Asset Ratings are “global” and thus available to all Dynamic Recommendations

• Very flexible. Very powerful. Very “dynamic”

• Can also be used to “trim” existing Named Associations, Searchstates, etc.

Page 91: WebCenter Sites Avanzado_v2.ppt

91 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageDisadvantages of Using Dynamic Recommendations

• Generates an unknown dependency which will affect caching and publish frequency

• Cannot specify Confidence to further refine the rendered results – thus you are limited to Ratings only to control the behavior of lists

• Requires assets to be rated individually (or via parents) – but this should also be considered an advantage

Page 92: WebCenter Sites Avanzado_v2.ppt

92 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageDynamic Recs: Using Parents To “Bin" Ratings:

• Ratings do not need to be set at the child level

• They can be set at the Parent level also

• Thus, in a simple structure, all children of the Dell category would receive the same rating

• However, it gets complex when a flex child might inherit multiple ratings from different parent types– e.g. Dell (MFG category) GeekUsers Rating = 60– e.g. Laptop (PROD category) GeekUsers Rating = 99

• Somewhat hard to audit since such inherited/calculated ratings are not shown anywhere in the GUI

Page 93: WebCenter Sites Avanzado_v2.ppt

93 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageRating = 100: A Very Special Condition

• If any asset in the list has rating=100 for any matching segment, then it "wins" and only other assets also with 100 will be rendered

• Even assets with Rating=99 will not be shown!

• Example:– ProductA has segment1=100, segment2=99– ProductB has segment1=97, segment2=98– VisitorA belongs to both segment1 & segment2 only sees ProductA– VisitorB belongs to only segment1 only sees ProductA– VisitorC belongs to only segment2 sees ProductA & ProductB

Page 94: WebCenter Sites Avanzado_v2.ppt

94 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageRating = 0: Another Very Special Condition

• If any asset in the list has rating=0 for any matching segment, then it will never show even if it has a different rating in another segment that the visitor belongs to

• It even “wins” over rating=100 in another segment!

• Example:– ProductA has segment1=0, segment2=99– ProductB has segment1=97, segment2=98– VisitorA belongs to both segment1 & segment2 only sees ProdB– VisitorB belongs to only segment1 sees nothing (or whatever was specified in “no

segment applies”)– VisitorC belongs to only segment2 sees ProductA & ProductB

Page 95: WebCenter Sites Avanzado_v2.ppt

95 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageDesign Considerations:

Generally:

• If you use Static List Recommendations, typically use Sort by Confidence rather than Rating

• If you use Dynamic List Recommendations, typically use Sort by Rating since there is no Confidence

• In both cases: take extra care with Rating=100 or Rating=0 as these values "dominate everything"

• Besides Confidence and Rating you can also sort instead on Attributes: e.g. Year, Price, etc.

Page 96: WebCenter Sites Avanzado_v2.ppt

96 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageOther Considerations:

• Rating assets individually can be tedious

• Rating assets per parent makes more sense, but be aware the effect of "dilution"– e.g. setting a single parent to 99 might only change the child by a small margin (if it

has many possible parents, each of which contributes to the overall calculation)

• This is why Static List Recommendations were invented: you only need to set Confidence for what you need. Ratings trim the list, Confidence biases the list.

• Confidence is NOT diluted. Thus it tends to “win”

• Downside is that you cannot globally set a Confidence for an asset – it needs to be set for each Static List Recommendation it appears in

Page 97: WebCenter Sites Avanzado_v2.ppt

97 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageOther Considerations (cont.)

• RANKING* is yet another hidden feature of CS Engage– Calculated Rank = (Avg. Rating) * Confidence

• Used for primarily for returning a single asset via the “getsinglerecommendation” tag

• Example of a getrecommendations list (sorted by Rating):1. XXX (avg. rating=60, confidence=80)

2. YYY (avg. rating=50, confidence=100)

3. ZZZ (avg. rating=40, confidence=90)

• However, getsinglerecommendation will return YYY

• Why?

* Not documented as such

Page 98: WebCenter Sites Avanzado_v2.ppt

98 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageOther Considerations (cont.)

• Subtle differences between getrecommendations and getsinglerecommendation tags

• getrecommendations returns a list of assets that is sorted by the Recommendation asset itself– e.g. sort by Confidence– e.g. sort by Rating– e.g. sort by Attribute– The asset with the highest (or lowest) sort value rises to the top

• getsinglerecommendation returns a single asset determined by its rank = (avg. Rating) * Confidence– Sort criteria don’t figure in determining which asset is returned

• In other words: they behave quite differently

Page 99: WebCenter Sites Avanzado_v2.ppt

99 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageOut Of Segment Confidence = None%

• You will notice that for Static List Recommendations, there is an option for setting the “Out Of Segment” Confidence

• The default value is None% (which is *NOT* like the default “50” used for a null Rating). It literally is null.

• But if you specify any non-zero % value, then that asset’s behavior when there is no segment is equivalent to setting a Rating = 100

• In other words, usage of this field “dominates” and ONLY those assets with non-None/non-Zero % values will be rendered when there are no segments

• Yup, it can get complicated!

Page 100: WebCenter Sites Avanzado_v2.ppt

100 | © 2011 Oracle Corporation – Proprietary and Confidential

Lesson: Implicit SegmentationStep 2: Using ClickStamp History Attributes

• Please make note of the default content on the AVI Sports Home Page

• Go to the Features section and click on the two "Andre Agassi" stories in Featured Articles list a few times

• Now go back to the homepage – you should see Agassi-biased content being rendered

• How it works: the system keeps track of how many times you hit any “tagged” page by logging the ClickStamp (TagTracker) history attribute (def) into the db via a call to the SEUtils/History/RecordHistory element from /Layout

• Find the segment Likes Aggasi and explain how it works

• Note: This solution would probably not scale in the real world

Page 101: WebCenter Sites Avanzado_v2.ppt

101 | © 2011 Oracle Corporation – Proprietary and Confidential

Lesson: Explicit SegmentationStep 3: Using ClickStamp History Attributes

• Login to the AVI Sports site with username/password of nancy/fwdemo1234.

• Navigate back to the home page to see her segment’s targeted content (i.e. Women Agassi Fans)

• How it works: when nancy logged in her visitor attributes identified her as Gender=Female and her ClickStream identified her as an Agassi Fan. Since she met both criteria, her 2nd segment was Women Agassi Fans

• Inspect the Home Articles Recommendation and describe how it works (note the ranking of the mere “Likes Agassi” segment – why are the numbers lower?)

Page 102: WebCenter Sites Avanzado_v2.ppt

102 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageSummary

• Engage is a powerful set of tools and features

• The hardest part is designing your Segments FIRST!– Segments must be appropriate to your line of business and types

of visitors– Too many Segments is bad (i.e. hard to manage)– Too few is bad also– Simple Segments like “Male/Female” are hardly worth the effort– Allocate enough time for a proof-of-concept to workout the details

Page 103: WebCenter Sites Avanzado_v2.ppt

103 | © 2011 Oracle Corporation – Proprietary and Confidential

EngageSummary (cont.)

• The 2nd most time-consuming part is dealing with how to register (and manage) your visitors, how to (efficiently) store their visitor data, and how to set/read/expire cookies (or session vars) for when they aren’t “logged in”

• Coding the rendering of recommended assets using the commercecontext tags is SIMPLE!

• Caching is essential for any web application but can be tricky (or even impossible) to design an optimal strategy for complex “segmentation” requirements

• Other features like History Attributes and Promotions are considered “advanced topics” – they add to the richness of Engage

Page 104: WebCenter Sites Avanzado_v2.ppt

104 | © 2011 Oracle Corporation – Proprietary and Confidential

For More Reading About Engage

• csAdministrator_76– Appendix, Visitor Tables (Engage)

• csDeveloper_76P1– Part 3, Chapter 11, Engage Subsection– Part 7, Chapters 39-42

Page 105: WebCenter Sites Avanzado_v2.ppt

105 | © 2011 Oracle Corporation – Proprietary and Confidential

13:30 – 14:00 GADGETS/COMMUNITY/MOBILITY

Page 106: WebCenter Sites Avanzado_v2.ppt

106 | © 2011 Oracle Corporation – Proprietary and Confidential

Gadget ServerFeatures

• Allows Site Visitors to– Customized Dashboard

• Allows customers to– Create gadgets from WebCenter Sites Contents– Publish Gadgets in external repositories (i.e. iGoogle)– Deploy as “Single Gadget”

Page 107: WebCenter Sites Avanzado_v2.ppt

107 | © 2011 Oracle Corporation – Proprietary and Confidential

Gadget Server Administration

• Allows Administrator to– Create and administrate gadgets repository– Deploy dashboards or Single Gadgets

Page 108: WebCenter Sites Avanzado_v2.ppt

108 | © 2011 Oracle Corporation – Proprietary and Confidential

Gadget Server Deploying Gadget Server Tags

• Gadget Server features can be enabled on a page using by using GaS TAGS

• GaS Tags are JavaScript based

• GaS Admin generates the required code

• Developers only need to cut & paste the required TAGS on the templates

Page 109: WebCenter Sites Avanzado_v2.ppt

109 | © 2011 Oracle Corporation – Proprietary and Confidential

Community ServerFeatures

• Allows Site Visitors to– Comment on Articles– Review & Rate Products– Flag Comments/Reviews– Polling (CoS 1.5)– Blogging

Page 110: WebCenter Sites Avanzado_v2.ppt

110 | © 2011 Oracle Corporation – Proprietary and Confidential

Community Server Administration

• Allows Administrator to– View all comments & reviews– Edit comments & reviews– Set if anonymous users can comment/review– Moderate Comments & Reviews– Set Approval Rules (Auto/Manual)– Set restricted words– Set black/while list of visitors

Page 111: WebCenter Sites Avanzado_v2.ppt

111 | © 2011 Oracle Corporation – Proprietary and Confidential

Community Server Deploying Community Server Tags

• Community Server features can be enabled on a page using by using CoS TAGS

• CoS Tags are JavaScript based

• CoS Admin generates the required code

• Developers only need to cut & paste the required TAGS on the templates

Page 112: WebCenter Sites Avanzado_v2.ppt

112 | © 2011 Oracle Corporation – Proprietary and Confidential

Supported Platforms• OS - RedHat Enterprise Linux 5.0

• Database – Oracle 10g R2, 11g

• Uses Apache Web Server (installed with product)

• Requires domain (server) and subdomain (UI)

• Installation– Download specified lampp package.

– Run install.sh

– Installer prompts:• Install type Development instance (installs Admin UI & Mobility Server) or Production instance (No UI, only Mobility

Server)

• Content Server domain, user, and password

• Mobility server domain & subdomain.

• Package includes mobile assets & templates– Image carousel, header, footer, list, detail, etc

Page 113: WebCenter Sites Avanzado_v2.ppt

113 | © 2011 Oracle Corporation – Proprietary and Confidential

Deployment Architecture

There is a Mobility Server instance per Content Server. Mobility Server has a server component and a UI component used for the WEM UI (admin server is only on the development instance). Mobility Server includes a database component used for the Cache and Device Detection Database. More details on next slide.

Page 114: WebCenter Sites Avanzado_v2.ppt

114 | © 2011 Oracle Corporation – Proprietary and Confidential

Flow1. Mobile device makes connection to site and is redirected to Mobility

Server to serve request

2. Mobility Server detects the device model of the incoming device.

3. Mobility Server calls Content Server to get the siteplan (via custom REST call)

4. Mobility Server calls Content Server to get cids of content used in web page (via custom REST call)

5. Mobility Server calls appropriate php template (based on asset type) to render page. REST calls are made to Content Server to get actual content (e.g. list of articles or article detail)

6. Mobility Server sends markup to device.

Page 115: WebCenter Sites Avanzado_v2.ppt

115 | © 2011 Oracle Corporation – Proprietary and Confidential

Concepts

• Device family – device family represents a group of devices with similar layout characteristics (e.g. screen size, touch type, etc)– 3 families ship out-of-the-box: touch, basic, smartphone– A set of php templates have to be created per asset type (article, product, detail,

list, etc) per device family– Php template renders the asset type– OOTB sample templates come with installation

• Mobility Server Controller makes custom REST calls to Content Server to get site plan and page content (via jsps described on next slide)

• Mobility Server Controller makes REST calls to get actual content (e.g. article) and places content into object accessible by php templates.

Page 116: WebCenter Sites Avanzado_v2.ppt

116 | © 2011 Oracle Corporation – Proprietary and Confidential

ALTERNATIVES????

• “Same code” as WebCenter Sites

• Can use Personalization

• Can use PageLayout

• Can use Insite Editing

• What about Location based services? -> HTML5

•Mobility Server -> supports thousands of devices

•JQueryMobile/others -> only new devices and what about roadmap?

Page 117: WebCenter Sites Avanzado_v2.ppt

117 | © 2011 Oracle Corporation – Proprietary and Confidential

14:00 – 15:00 COMIDA

Page 118: WebCenter Sites Avanzado_v2.ppt

118 | © 2011 Oracle Corporation – Proprietary and Confidential

15:00 – 17:00 TALLERES TÉCNICOS DESARROLLO

Page 119: WebCenter Sites Avanzado_v2.ppt

119 | © 2011 Oracle Corporation – Proprietary and Confidential

Definition of a new Page Layout

• Create new Page subtype (Workshop)

• Create new Page template for the previous subtype (WorkshopDetail)

• Use ContentServerExplorer to edit the template and add some slots to be PageLayout ready

• Create a new Page asset (write something at “Description”), with Workshop subtype and place it in SitePlan (category public and template /Layout)

• Preview your page and change to PageLayout mode

Page 120: WebCenter Sites Avanzado_v2.ppt

120 | © 2011 Oracle Corporation – Proprietary and Confidential

Definition of a new AssetType• Create different asset attributes:

– StudentName – String

– StudentLastName – String

– StudentCompany – String

– StudentPhoto – Blob (ImageEditor as AttrEditor)

– StudentBio – Text (FCKEditor as AttrEditor and allow embedded links)

– StudentBirthday – Date (DatePicker as AttrEditor)

– StudentCV – Asset Document (PickAsset as AttrEditor)

• Create new Parent Asset Type (StudentCat)

• Create new Asset Type (Student)

• Create new Asset Definition (Student)

• Create StartMenu items (new and search) for AssetType Student

• Enable the new AssetType in our Site (FS)

• Add AssetType to Assets TreeTab

• Create several assets of Student (all of you)

Page 121: WebCenter Sites Avanzado_v2.ppt

121 | © 2011 Oracle Corporation – Proprietary and Confidential

Template for Content Display

• Building of two Templates (Detail & Summary) to Display the previously created Asset Type

• For relationship attributes (StudentCV), discover the reusability of other Asset Type Templates.

• Preview the Content in those two templates (independently from the site)

Page 122: WebCenter Sites Avanzado_v2.ppt

122 | © 2011 Oracle Corporation – Proprietary and Confidential

Template for Content Display (Suite)

• Using Page Layout place the asset within the Site using Summary Template.

• Click on the link to view the Student Detail…..• Opppps……• BONUS: Why the detail is not displayed????

– Build the associated Container template (you can copy the ArticleCat Container Template)

Page 123: WebCenter Sites Avanzado_v2.ppt

123 | © 2011 Oracle Corporation – Proprietary and Confidential

Insite Editing

• Add insite editing capabilities in our Detail Template

• Change to Editing mode and test it

Page 124: WebCenter Sites Avanzado_v2.ppt

124 | © 2011 Oracle Corporation – Proprietary and Confidential

Community & Gadget Server

• Add Community Server widgets to Detail Template

• Little hard…..are you able to create a gadget that displays the Students??? TRICK: look how is displayed the articles gadget…

• Create single gadget with the Students and place it in our Page

Page 125: WebCenter Sites Avanzado_v2.ppt

125 | © 2011 Oracle Corporation – Proprietary and Confidential

Engage• Create new Asset Attribute (VisCompany)

• Add the attribute to the visitor definition

• Create new Visitor (You)

• Create new Visitor Attribute (VisCompany, category Profile type String, constraint type Enumeration and enter some values [obviously, your company also])

• Create new Segment (Profile rules, VisCompany equals [your_company])

• Create new recommendation (type recommendation, static list), add several contents to “no Segment Apply” and add your Segment to recommendation and select your preferred contents.

• Go to preview – PageLayout

• Search your recommendation

• Place it (Summary Template), save and preview

• Now, if you do login with your Visitor, you can see your Custom view

• BONUS: Investigate why it works automatically if we created a new Attribute. TRICK: follow the flow….

Page 126: WebCenter Sites Avanzado_v2.ppt

126 | © 2011 Oracle Corporation – Proprietary and Confidential

ÚLTIMO PASO: RECURSOS

Page 127: WebCenter Sites Avanzado_v2.ppt

127 | © 2011 Oracle Corporation – Proprietary and Confidential

DocumentationDownloadable from Support

• v7.6 Admin Guide (pdf)

• v7.6 Developer Guide (pdf)

• v7.6 CS Developer Tools (pdf) – a.k.a CSDT

• v7.6 Backup and Recovery Guide (pdf)

• v7.6 Internationalization Reference (pdf)

• v7.6 CS-LDAP Integration Guide (pdf))

• v7.6 Property Files Reference (pdf)

• v7.0.3 Delivery Systems Performance Guide (pdf)

• v7.5 p2 Engage Performance Guide (pdf)

• v7.6 JSP tag reference (html)

Page 128: WebCenter Sites Avanzado_v2.ppt

128 | © 2011 Oracle Corporation – Proprietary and Confidential

• How to admin Sites

DocumentationStructure

• HTML Tag Ref

• How to Develop for Sites

• Interesting Reading

Page 129: WebCenter Sites Avanzado_v2.ppt

129 | © 2011 Oracle Corporation – Proprietary and Confidential

Mailing list

[email protected]

Page 130: WebCenter Sites Avanzado_v2.ppt

130 | © 2011 Oracle Corporation – Proprietary and Confidential