Download presentation
Presentation is loading. Please wait.
Published byLorraine Warren Modified over 9 years ago
2
NET Development on Microsoft SharePoint Technology Part 4: Templates, Features, and Solution Deployment Mick Badran Breeze Training Consulting Trainer and Sharepoint Specialist mickb@breezetraining.com.au
3
User Interface Entry Points
4
SPUser.About Mick Badran –Director Breeze Training (www.breezetraining.com.au)www.breezetraining.com.au SharePoint 2001/2003 Experience –Lots of training/mentoring and consulting on small, medium and large scale projects. –Involved in TAP programs, Microsoft Ascend training, development of SPS Training material. SharePoint 2007 Experience –Early start in June 2005 with TAP workshops –Creation and delivery of Ascend training Australia wide. –Sharepoint migrations and implementations. –Creator of successful Australia wide MOSS bootcamps for Partners. Contact Details –Email: mickb@brezetraining.com.au –IM: mickb@breezetraining.com.au –Blog: http://blogs.breezetraining.com.au/mickb
5
Agenda Site Provisioning Flow in WSS and MOSS A Closer Look at Site Definitions Steps for Creating Custom Site Definitions The Features feature in WSS 3.0 Exploring and Creating Features Activation Dependencies and Feature Event Receivers Packaging, Deploying, Upgrading, Retracting and Removing SharePoint Solutions
6
Site Provisioning Two-step process 1.Creation of a site at a specific URL 2.Populating the site based on a site template Designed to be a platform that can support different types of sites - the template architecture can be extended Site templates –Use browser to save an existing site as a template Stored in the database Can be extracted as STP file –Create site definition Collection of files making up the template Stored on the front-end Web server as a physical folder
7
The Provisioning Flow Selection of a site template Webtemp.xmlWebtempsps.xmlWebtemp*.xml Retrieve Site Definition in \12\Templates\ SiteTemplates Call to Microsoft.SharePoint. Publishing. PortalProvisioningProvider InternetBlank.xml PortalWebmanifest.xml 1 Site Portal = # Sites
8
Internet Starter Kit
9
Improvements to v3 Site Definitions GLOBAL Template Resources Features
10
Closer Look at ONET.XML ONET.XML stores the core definition Global Template stores common definitions navigation bars list templates document templates configurations features modules ONET.XML
11
Dissecting the Team Site Definition
12
Creating Custom Site Definitions with VS.NET Extensions for WSS 3.0 Visual Studio Tools for Sharepoint Visual Studio 2005 Project Templates –Web Part –Team Site Definition –Blank Site Definition –List Definition Visual Studio 2005 Item Templates –Web Part –Custom Field –List Definition (with optional Event Receiver) –Content Type (with optional Event Receiver) –Module SharePoint Solution Generator –Generates a Site Definition project from an existing SharePoint site.
13
Reverse Engineering a Site with the SharePoint Solution Generator
14
Modular Provisioning: Features! Reusable pieces of customization Extend existing sites Easily installed/activated Feature Name ID Description Scope Receiver assembly Activation Dependencies Element Manifests Feature Name ID Description Scope Receiver assembly Activation Dependencies Element Manifests Feature.xml Custom Actions Custom Views Content Type Definitions Layouts Pages Modules (files) List Instances List Templates Event Receivers Delegate Controls Workflow Bindings Custom Actions Custom Views Content Type Definitions Layouts Pages Modules (files) List Instances List Templates Event Receivers Delegate Controls Workflow Bindings Elements.xml
15
Feature - Scopes Web Elements List DefinitionList FormsList ViewsList Instances List Item Events Item Custom Actions Web Admin Custom Actions Layout Files Site Collection Elements Site Settings Links Web Part Definitions Workflow Definitions Site Content TypesLayout FilesList Instances Web Application Elements Item Custom ActionsSite Settings LinksAdmin Custom Actions Farm Elements Item Custom Actions Site Settings LinksAdmin Custom Actions
16
Site Collection Features Site Collection Features Farm Features Farm Features Web Features Web Features Contacts Hidden Features Visible Features Document Libraries Document Libraries Picture Libraries Picture Libraries Events Basic List Links Announce- ments Announce- ments Tasks Survey Discussion Board Discussion Board WSS Core Links WSS Core Links Core Content Types Core Content Types Content Light Up Core Column Templates Core Column Templates WSS Out-Of-The-Box Features
17
Exploring some of the OOTB Features
18
Making Features Available Features must be copied to \12\Template\Features folder of every Front-end Web Server Features must be installed Administrators can activate or deactivate features using The browser Using STSADM Event handlers can be hooked-up with the activate and deactivate events Stsadm.exe –o installfeature –filename myfeature\feature.xml Stsadm.exe –o activatefeature –filename myfeature\feature.xml –url url
19
Create! Install! Activate! And Ready To Use!
20
Activation Dependencies Features can be designed with dependencies –Allows one feature to assume another feature is present Example: Feature B might depend on Feature A –B should be written with activation dependency on A –Activating B forces A to be activated as well –Deactivating B results in deactivation of A Features can be defined as hidden –Hides the feature from users in administration activation pages –Hidden features still activated by others with dependencies
21
Feature Provisioning Events <Feature Id="9D2F3359-7664-430b-9391-143A7CCD2942" ReceiverAssembly="LitwareAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xyz" ReceiverClass="Litware.LitwareFeatureReceiver" xmlns="http://schemas.microsoft.com/sharepoint/"> namespace Litware { public class MyFeatureReceiver : Microsoft.SharePoint.SPFeatureReceiver { public override void FeatureInstalled(SPFeatureReceiverProperties properties) { // event hander run after feature is installed } public override void FeatureActivated(SPFeatureReceiverProperties properties) { // event hander run after feature is activated SPWeb web = (SPWeb)properties.Feature.Parent; web.Title = "Hello World"; web.Update(); } public override void FeatureDeactivating(SPFeatureReceiverProperties properties) { // event hander run before feature is deactivated } public override void FeatureUninstalling(SPFeatureReceiverProperties properties) { // event hander run before feature is uninstalled } Define the receiver class by inheriting from SPFeatureReceiver Point to receiver class in Feature.xml (assembly must be in GAC)
22
Feature Event Receivers
23
SharePoint Solutions SharePoint Solution Packages allow you to physically distribute your solutions –Web Parts –Site Definitions –Features –Custom Workflows –Application and Site Pages –… Component Manifest DDF MakeCab WSP
24
Example Packaging a Site Definition Provision Code DDFDDF DDFDDF MySite. WSP Provision Feature MySite.dll feature.xml provisioner.xml Site Definition Feature feature.xml elementManifest.xml Site Definition Schemas ONET.XML WebtempMySite.xml # Features (lists/libraries) feature.xml elementManifest.xml Installation Script Manifest.xml
25
Packaging SharePoint Solutions
26
A Complete SharePoint Solution Story Solutions can be added to the Solution Store of the server farm Solutions can be deployed to site collections Solutions can be upgraded with new versions Solutions can be retracted from site collections Solutions can be removed from the Solution Store
27
Deploying and Upgrading SharePoint Solutions
28
Review Better story for creating custom site definitions Modular approach with Features Better story for packaging, deploying and maintaining solutions Thank you linesman…..thank you ball boys……
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.