windows sharepoint services 'v3': creating and defining custom templates, sites, features,...

39
Windows SharePoint Services 'v3': Windows SharePoint Services 'v3': Creating And Defining Custom Creating And Defining Custom Templates, Sites, Features, And Templates, Sites, Features, And Solutions Solutions Mike Ammerlaan Mike Ammerlaan OFF308 OFF308 Program Manager Program Manager Microsoft Corporation Microsoft Corporation

Upload: abraham-pearson

Post on 24-Dec-2015

227 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Windows SharePoint Services 'v3': Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Creating And Defining Custom Templates, Sites, Features, And SolutionsSites, Features, And Solutions

Mike AmmerlaanMike AmmerlaanOFF308OFF308Program ManagerProgram ManagerMicrosoft CorporationMicrosoft Corporation

Page 2: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Office “12” : Server Office “12” : Server InvestmentsInvestmentsBetter empowerment, TCO and developer Better empowerment, TCO and developer productivityproductivity

Next generation e-Next generation e-mail, project mail, project

management, management, workflow, blog and workflow, blog and

wiki supportwiki supportCollaborationCollaboration

BusinessBusinessIntelligenceIntelligence

PortalPortalEnhanced SharePoint Enhanced SharePoint Portal aggregation and Portal aggregation and personalizationpersonalization

Great relevanceGreat relevancewith rich people andwith rich people and

business data searchbusiness data search

Server-based Server-based forms and forms and

workflow with workflow with smart client and smart client and

browser interfacesbrowser interfaces

Server-based Server-based spreadsheets plus BI spreadsheets plus BI portals built on SQL portals built on SQL Server Analysis Server Analysis ServicesServices

Integrated document, Integrated document, records and Web records and Web content managementcontent management

BusinessBusinessProcesseProcesse

ss

Unified ASP.NET 2.0 Unified ASP.NET 2.0 workspace foundation for workspace foundation for

scalability and extensibilityscalability and extensibility

SearchSearchContentContentManagementManagement

WindowsSharePoint

ServicesSite Provisioning, Storage, Security, Management, APIs

Page 3: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

AgendaAgenda

Goals and Investments for Windows Goals and Investments for Windows SharePoint Services (WSS) “v3”SharePoint Services (WSS) “v3”

Feature FrameworkFeature Framework

Provisioning CalloutsProvisioning Callouts

Extending the User InterfaceExtending the User Interface

Solution DeploymentSolution Deployment

Upgrade and LocalizationUpgrade and Localization

Page 4: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

What Is Provisioning?What Is Provisioning?

Core component of the SharePoint Core component of the SharePoint Services platformServices platform

Lets users choose their own template Lets users choose their own template

Defines your web applicationDefines your web application

Two formsTwo formsSite Templates (*.stp files) Site Templates (*.stp files)

Typically user createdTypically user created

Site DefinitionsSite DefinitionsDeveloper created, stored on web server file Developer created, stored on web server file systemsystem

Page 5: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

<Project>

<NavBars>…<NavBars>

<ListTemplates>…</ListTemplates>

<DocumentTemplates>…</DocumentTemplates>

<BaseTypes>….</BaseTypes>

<Modules>… </Modules>

<Configurations>…</Configurations>

</Project>xml\

onet.xml

lists\<listname>\schema.xmldefault.asp

x lists\<listname>\ dispform.aspx

<List> <MetaData>

<Fields> <Field></Field> <Fields>

<Views> <View></View> </Views>

<Forms> <Form></Form> </Forms>

<Toolbar></Toolbar> </MetaData>

<Data> <Rows> <Row></Row> </Rows> </Data>

</List>

lists\<listname>\ editform.aspx

lists\<listname>\ newform.aspx

Site Definitions In Version 2Site Definitions In Version 2

stdview.xml

vwstyles.xml

lists\<listname>\ allitems.aspx

Page 6: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Goals For “v3”Goals For “v3”

Accommodate partnersAccommodate partnersAdd functionality to existing sitesAdd functionality to existing sites

Easier to developEasier to developLess XML to create site templatesLess XML to create site templates

Less duplicationLess duplication

Easier to change site functions over Easier to change site functions over timetime

Administrators can add or Administrators can add or remove functionalityremove functionality

Page 7: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Investments For “v3”Investments For “v3”

What’s new for provisioning and What’s new for provisioning and sites?sites?

The Global TemplateThe Global TemplateCommonalities factored outCommonalities factored out

FeaturesFeaturesModularity for your templatesModularity for your templates

““Light Up”Light Up”Add functionality to your existing sitesAdd functionality to your existing sites

SolutionsSolutionsBetter deploymentBetter deployment

Page 8: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

The “Global” TemplateThe “Global” Template

Provisioned before any other Provisioned before any other templatetemplate

ContainsContainsGallery definitionsGallery definitions

Base typesBase types

Mobile redirectMobile redirect

Implication: you don’t need to define Implication: you don’t need to define thesethese

Page 9: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

AgendaAgenda

Goals and Investments for “v3”Goals and Investments for “v3”

Feature FrameworkFeature FrameworkProvisioning CalloutsProvisioning Callouts

Extending the User InterfaceExtending the User Interface

Solution DeploymentSolution Deployment

Localization and UpgradeLocalization and Upgrade

Page 10: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

The Feature FrameworkThe Feature Framework

Group logical elements into Group logical elements into scenario-driven “features”scenario-driven “features”

““Specification Library” FeatureSpecification Library” Feature

Features scoped at web, site, web Features scoped at web, site, web application, farmapplication, farm

Better living through modular Better living through modular provisioningprovisioning

Page 11: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Item Custom ActionsItem Custom ActionsSite Settings LinksSite Settings LinksAdmin Custom ActionsAdmin Custom Actions

Item Custom ActionsItem Custom ActionsSite Settings LinksSite Settings LinksAdmin Custom ActionsAdmin Custom Actions

Site Settings LinksSite Settings LinksSite Web Part DefinitionsSite Web Part DefinitionsWorkflow DefinitionsWorkflow DefinitionsSite Content TypesSite Content TypesFiles [provisioned to root web]Files [provisioned to root web]List Instances [provisioned to root List Instances [provisioned to root web]web]

List Definition + Forms + ViewsList Definition + Forms + ViewsList InstancesList InstancesList Item EventsList Item EventsItem Custom ActionsItem Custom ActionsWeb Admin Custom ActionsWeb Admin Custom ActionsFilesFiles

Site Site ElementsElements

Farm Farm ElementsElements

Web Web ElementsElements

Web Application ElementsWeb Application Elements

Page 12: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Adding Features To SitesAdding Features To Sites

User InterfacesUser Interfaces

Administrator can “activate”Administrator can “activate”UI, Command LineUI, Command Line

Hidden vs. Visible FeaturesHidden vs. Visible Features

Activation DependenciesActivation Dependencies

Feature/site template bindingsFeature/site template bindings

Page 13: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Knowledge Base ListKnowledge Base List

Knowledge Base Library List ViewsKnowledge Base Library List Views

Knowledge Base Templates Knowledge Base Templates Link to PageLink to Page

Knowledge Base DashboardKnowledge Base Dashboard

Knowledge BaseKnowledge BaseLibraryLibrary

SPWeb FeatureSPWeb Feature

Most Popular Topics Web PartMost Popular Topics Web Part

Knowledge BaseKnowledge BaseInfrastructure Infrastructure SPSite FeatureSPSite Feature

Knowledge Base Content Type Knowledge Base Content Type & Column Templates& Column Templates

Root List for Knowledge Base TemplatesRoot List for Knowledge Base TemplatesActivation Dependency

Page 14: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Specification LibrarySpecification Library

Product Bug TrackingProduct Bug Tracking

Software Release PlacematSoftware Release Placemat

FeaturesFeatures On instantiation, createOn instantiation, create

A Document Library called “Misc A Document Library called “Misc Docs”Docs”

A Specification Library called A Specification Library called “Project Specifications”“Project Specifications”

A Specification Library called A Specification Library called “Developer Documents”“Developer Documents”

A Web Part Page Library called A Web Part Page Library called “Prototypes”“Prototypes”

A task list called “Bugs”A task list called “Bugs”

Document LibraryDocument Library

TasksTasks

Project ManagementProject Management Custom look and feel (a Custom look and feel (a custom .aspx)custom .aspx)

Bugs list up top Bugs list up top

Spec Status in middleSpec Status in middle

Project Status KPI on the rightProject Status KPI on the right

Page layoutPage layout

WSS FeatureWSS Feature

ISV FeatureISV Feature

keykey

Developed by ITDeveloped by IT

Software Project Team Software Project Team SiteSite

Knowledge Base LibraryKnowledge Base Library

Page 15: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Team Team CollaboratioCollaborationn

ContactsContacts

Hidden FeatureVisible Feature

Web Web FeaturesFeatures

Site Site FeaturesFeatures

Document Document LibrariesLibraries

PicturePictureLibrariesLibraries

Basic Web Basic Web PartsParts

EventsEvents

Basic ListBasic List LinksLinks

Announce-Announce-mentsments

TasksTasks

SurveysSurveys DiscussionDiscussionBoardsBoards

WSS Core WSS Core LinksLinks

Farm Farm FeaturesFeatures

Core Core Content Content TypesTypes

ContentContentLightupLightup

Core Core Column Column TemplatesTemplates

Out Of The Box Features/Template ArchitectureOut Of The Box Features/Template Architecture

Page 16: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Version 2Version 2document templatesdocument templates

navigation barsnavigation bars

base typesbase types

modulesmodules

list instanceslist instances

standard viewsstandard views

view stylesview styles

default.aspxdefault.aspx

viewsviews

formsforms

fieldsfields

editform.aspxeditform.aspx

allitems.aspxallitems.aspx

viewsviews

formsforms

fieldsfields

editform.aspxeditform.aspx

allitems.aspxallitems.aspx

viewsviews

formsforms

fieldsfields

editform.aspxeditform.aspx

allitems.aspxallitems.aspx

viewsviews

formsforms

fieldsfields

editform.aspxeditform.aspx

allitems.aspxallitems.aspx

viewsviews

formsforms

fieldsfields

editform.aspxeditform.aspx

allitems.aspxallitems.aspx

ON

ET.X

ML

VW

STY

LES

.XM

LS

TD

VIE

W.X

ML

SC

HEM

A.X

ML

navigation barsnavigation bars

modulesmodules

list instanceslist instances

standard viewsstandard views

view stylesview styles

default.aspxdefault.aspx

ON

ET.X

ML

feature referencesfeature references

Version 3Version 3

Page 17: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Feature ProvisioningFeature Provisioning

Page 18: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

AgendaAgenda

Goals and Investments for “v3”Goals and Investments for “v3”

Feature FrameworkFeature Framework

Provisioning CalloutsProvisioning CalloutsExtending the User InterfaceExtending the User Interface

Solution DeploymentSolution Deployment

Localization and UpgradeLocalization and Upgrade

Page 19: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Provisioning CalloutsProvisioning Callouts

Web Template CalloutWeb Template Callout

Per-Feature CalloutsPer-Feature CalloutsFeatureInstalledFeatureInstalled

FeatureUninstalledFeatureUninstalled

FeatureActivatedFeatureActivatedPost sync feature activation event on webPost sync feature activation event on web

FeatureDeactivatingFeatureDeactivatingPre sync feature deactivation event on webPre sync feature deactivation event on web

Page 20: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Provisioning CalloutsProvisioning Callouts

Page 21: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

AgendaAgenda

Goals and Investments for “v3”Goals and Investments for “v3”

Feature FrameworkFeature Framework

Provisioning CalloutsProvisioning Callouts

Extending the User InterfaceExtending the User InterfaceSolution DeploymentSolution Deployment

Localization and UpgradeLocalization and Upgrade

Page 22: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Extending The User Extending The User InterfaceInterface

Extensible Toolbars, Menus, Settings Extensible Toolbars, Menus, Settings PagesPages

Link to pagesLink to pages

Can use ASP.NET controls on toolbarsCan use ASP.NET controls on toolbars

Associate byAssociate byList typeList type

Content typeContent type

File TypeFile Type

Page 23: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Content Type SettingsContent Type Settings

Site SettingsSite Settings

Central AdminCentral Admin

Page 24: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Display Form ToolBarDisplay Form ToolBar

View View ToolBarToolBar

Welcome Welcome MenuMenu

Site ActionsSite Actions

““ECB”ECB”

Page 25: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

““Light Up” Of Features In Light Up” Of Features In SharePoint SitesSharePoint Sites

Page 26: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

AgendaAgenda

Goals and Investments for “v3”Goals and Investments for “v3”

Feature FrameworkFeature Framework

Provisioning CalloutsProvisioning Callouts

Extending the User InterfaceExtending the User Interface

Solution DeploymentSolution DeploymentLocalization and UpgradeLocalization and Upgrade

Page 27: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Solution DeploymentSolution Deployment

Extension of Web Part PackagesExtension of Web Part PackagesCAB file with manifestCAB file with manifest

Support more solution file typesSupport more solution file typesFeature definitionsFeature definitions

Site definitionsSite definitions

Template Pages & ResourcesTemplate Pages & Resources

ResourcesResources

Global, Bin assembliesGlobal, Bin assemblies

Deploy across the farmDeploy across the farm

Page 28: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Specification Owner FieldsSpecification Owner Fields

Specification DashboardSpecification Dashboard

Specification List TypeSpecification List Type

Specification Specification LibraryLibrary

Element DefinitionElement Definition Feature DefinitionFeature Definition

key:

Specification ViewsSpecification Views

Specification Specification InfrastructureInfrastructure

Specification Content TypeSpecification Content Type

SpecLibrary.wspSpecLibrary.wsp

WSP CabWSP Cab

SpecificationSpecificationReview SiteReview Site

Site TemplateSite Template

Specification Status FieldSpecification Status Field

Page 29: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Solution And Template Solution And Template DeploymentDeployment

SpecV1.wspSpecV1.wsp(WSS Solution (WSS Solution

Cab)Cab)

DebuggingDebugging

WSS Save WSS Save as as TemplateTemplate

WSS WSS Config Config DBDB

FE ServersFE Servers

UI, UI, Command Line, Command Line, OM “deploy” OM “deploy” commandcommand

WSS WSS Content Content DBDB

““Notepad”Notepad”+ MakeCab+ MakeCab

WSS Site Template/List UI (port 80)WSS Site Template/List UI (port 80)

addadddeletdeletee

deploydeployretraretractct

Page 30: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Solution DeploymentSolution Deployment

Page 31: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Solutions And AssembliesSolutions And Assemblies

Deploy to VS Bin directory/GACDeploy to VS Bin directory/GAC

SecuritySecurityOnly trusted solutions should be Only trusted solutions should be deployed by box admindeployed by box admin

Prefer \bin directory to GACPrefer \bin directory to GAC

Restricted to signed solutions on Restricted to signed solutions on production boxes? Complete access production boxes? Complete access to WSS OMto WSS OM

Code can impersonate other usersCode can impersonate other users

Possible mitigation of access via CASPossible mitigation of access via CAS

Page 32: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Deployment TechniquesDeployment Techniques

SolutionsSolutionsSmall-large projects, internal projectsSmall-large projects, internal projects

Hybrid approachHybrid approachMSIs that contain solution packagesMSIs that contain solution packages

Added and deployed via custom action, Added and deployed via custom action, or via separate approachor via separate approach

EULA install for ISVsEULA install for ISVs

Full MSIFull MSICall InstallFeatures or ScanForFeaturesCall InstallFeatures or ScanForFeatures

Page 33: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

AgendaAgenda

Goals and Investments for “v3”Goals and Investments for “v3”

Feature FrameworkFeature Framework

Provisioning CalloutsProvisioning Callouts

Extending the User InterfaceExtending the User Interface

Solution DeploymentSolution Deployment

Localization and UpgradeLocalization and Upgrade

Page 34: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

LocalizationLocalization

Feature LocalizationFeature LocalizationAny XML file in a feature or site definition Any XML file in a feature or site definition can be tokenizedcan be tokenized

Resources for .net assemblies can be Resources for .net assemblies can be selected based on languageselected based on language

Each solution can have “language Each solution can have “language packs”packs”

Sets of XML resource files, resource Sets of XML resource files, resource binariesbinaries

Page 35: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

UpgradeUpgrade

Version 2 site definitions -> Version 3 Version 2 site definitions -> Version 3 via “upgrade definitions”via “upgrade definitions”

File mappingsFile mappings

List mappingsList mappings

New feature listingsNew feature listings

Page 36: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

RecapRecap

Better provisioning supportBetter provisioning supportLess XML for templatesLess XML for templates

Better modularizationBetter modularization

Better extensibility supportBetter extensibility supportAdd links, itemsAdd links, items

Solutions for deploying your itemsSolutions for deploying your items

Globalization SupportGlobalization Support

Upgrade from V2Upgrade from V2

Page 37: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Related Sessions, Labs, Related Sessions, Labs, etc.etc.

OFF409OFF409Windows SharePoint Services: Windows SharePoint Services: Advancements in Document, Content, and Advancements in Document, Content, and Data StorageData StorageOFF415OFF415Windows SharePoint Services: Developing Windows SharePoint Services: Developing Custom WorkflowsCustom WorkflowsOFF313OFF313Web Content Management Application Web Content Management Application Development and Engine ExtensibilityDevelopment and Engine ExtensibilityOFFHOL14 OFFHOL14 ASP.NET 2.0 Interoperability with Windows ASP.NET 2.0 Interoperability with Windows SharePoint Services “v3”SharePoint Services “v3”Office System/SharePoint Services Track Office System/SharePoint Services Track LoungeLounge

Page 38: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

Community ResourcesCommunity Resources

SharePoint Products and SharePoint Products and Technologies on MSDNTechnologies on MSDNhttp://msdn.microsoft.com/sharepointhttp://msdn.microsoft.com/sharepoint

SharePoint Products and SharePoint Products and Technologies on GotDotNetTechnologies on GotDotNethttp://gotdotnet.com/team/sharepointhttp://gotdotnet.com/team/sharepoint

Links to blogs, newsgroups, etc.Links to blogs, newsgroups, etc.

Page 39: Windows SharePoint Services 'v3': Creating And Defining Custom Templates, Sites, Features, And Solutions Mike Ammerlaan OFF308 Program Manager Microsoft

© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.