Deploying Code In SharePoint
-
Upload
corey-roth -
Category
Technology
-
view
4.754 -
download
1
description
Transcript of Deploying Code In SharePoint
![Page 1: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/1.jpg)
Deploying Code in SharePoint
Presenter: Corey RothSenior ConsultantStonebridge
Blog: www.dotnetmafia.com
![Page 2: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/2.jpg)
Corey Roth
Consultant for Stonebridge Worked in Consumer Electronics, Travel, Advertising,
and Energy industries Currently doing MOSS development specializing in
Enterprise Search, Workflow, and ECM Microsoft Award for Customer Excellence (ACE)
Winner E-mail: [email protected] Blog: www.dotnetmafia.com (mirrored on
sharepointblogs.com)
![Page 3: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/3.jpg)
Challenges for New Developers
Learning the API Setting up the development environment Debugging
![Page 4: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/4.jpg)
Deployment
![Page 5: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/5.jpg)
12 Hive Location of most key SharePoint files: C:\
Program Files\Common Files\microsoft shared\Web Server Extensions\12
Folder Description
CONFIGContains partial trust configuration files
ISAPIBinaries and SharePoint Web Services
LOGSError Logs (look here first when you get a strange error)
TEMPLATE\CONTROLTEMPLATES User Controls
TEMPLATE\FEATURESSharePoint Features (turns functionality on and off)
TEMPLATE\IMAGES MainImages Folder
TEMPLATE\LAYOUTS Pages and Styles
![Page 6: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/6.jpg)
12 Hive (Continued)
Folder Description
TEMPLATE\SiteTemplatesDefinitions avaiable for deploying new sites
TEMPLATE\THEMESUsed to create custom themes in SharePoint
TEMPLATE\XMLContains XSDs for any XML used with SharePoint
![Page 7: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/7.jpg)
Deploying Binaries – Two Options
GAC Deployment – Not recommended unless absolutely necessary (i.e.: Event Recivers, Timer jobs, Workflows, etc). Requires application pool to be reset after every
deployment. Allows code to execute with full trust Acceptable for new developers starting out
because it is easier
![Page 8: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/8.jpg)
Deploying Binaries – Two Options
Bin Folder Deployment – Recommended but more complex Requires a developer to specify code access
security settings or running SharePoint with full trust
Does not require application pool to be reset Recommended approach but more complicated
to implement
![Page 9: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/9.jpg)
SafeControls
SharePoint won’t execute a web part or user control unless it knows it is safe
Declare an assembly and namespace safe in web.config
SafeControls element Can be automated using a solution package
(.wsp)
![Page 10: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/10.jpg)
Deployment Options
Manually copy binaries, feature files, pages, and controls to appropriate folders on SharePoint server
Create a Feature – Would still have to manually copy files
Create a Solution Package (.wsp) – A cab file that contains a manifest telling SharePoint how to deploy files and what features to install
![Page 11: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/11.jpg)
Ghetto Deployment (Manual)
Manually copy binaries to GAC or bin folder Manually upload .webpart files to web part
gallery Manually copy user controls to
CONTROLTEMPLATES folder Manually copy features files into FEATURES
folder Manually copy anything else that you might
need to deploy
![Page 12: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/12.jpg)
Building and Deploying a Web Part
Deploys similarly to a user control .webpart (or .dwp) file tells SharePoint where
to find the web part’s code Use a feature to add the web part to the
gallery Complete instructions at my blog http://www.dotnetmafia.com/blogs/dotnettipo
ftheday/archive/2008/10/22/intro-to-sharepoint-development-how-to-build-and-deploy-a-web-part.aspx
![Page 13: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/13.jpg)
Demo
![Page 14: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/14.jpg)
Features
A series of XML files that allow you to make changes to SharePoint
Located in the TEMPLATE\FEATURES folder in the 12 hive
Changes can include creating lists, pages, content types, site columns, and web parts.
Can copy files into SharePoint’s virtual file repository but the template files still have to be deployed to the 12 hive first
![Page 15: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/15.jpg)
Solution Packages (.wsp files)
A cab file that can copy binaries, features, pages, and other files to SharePoint.
Defined by manifest.xml and cab.ddf files Created with makecab.exe Can copy binaries to bin folder or GAC Can apply safe control and code access
security settings Automatically installs features Can also be upgraded and retracted /
deleted. Can be automated with VSeWSS,
WSPBuilder, stsdev, etc.
![Page 16: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/16.jpg)
cab.ddf
Specifies which files to copy into the wsp file.
You must specify each binary, page, XML or .webpart file you want to be copied in this file
Syntax for each file is source <space> destination
The destination specified is the location in the file not the location on the SharePoint server.
![Page 17: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/17.jpg)
Manfiest.xml
Specifies which features to activate and which files to copy into the 12 hive.
Can deploy SiteTemplates Specifies SafeControl settings in web.config Configures Code Access Security (CAS)
settings Paths are relative to the TEMPLATES folder
in the 12 hive http://www.dotnetmafia.com/blogs/dotnettipo
ftheday/archive/2008/09/04/more-on-manfiest-xml.aspx
![Page 18: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/18.jpg)
Manfiest.xml Elements
FeatureManifests – Specifies feautres to activate TemplateFiles – Required for any file that you want
copied that is not a binary or feature file Assemblies – Required for each binary to be
deployed DeploymentTarget – WebAppplication or
GlobalAssemblyCache SafeControls – Adds SafeControl entry to
web.config CodeAccessSecurity – Applies CAS policies to
assembly
![Page 19: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/19.jpg)
Deploying your solution (.wsp) file
1. Add the solution with stsadm stsadm –o addsolution –filename mysolution.wsp
2. Deploy the solution with stsadm or Central Admin -> Solution Management stsadm –o deplysolution –name mysolution.wsp –
immediate –allowGacDeployment –allowCasPolicies stsadm –o execadmsvcjobs
-o upgradesolution – Upgrades an existing solution’s files
-o retractsolution – Remove the solution from a given site(s)
-o deletesolution – Removes the solution from the solution store
![Page 20: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/20.jpg)
Building a User Control with Visual Studio Web Application Project Reference Microsoft.SharePoint.dll Must be registered as safe for SharePoint to execute Typically deployed to bin folder using Code Access
Security Controls are typically deployed to the
CONTROLTEMPLATES folder in the 12 hive. _ControlTemplates Virtual Directory Complete instructions are on my blog http://www.dotnetmafia.com/blogs/dotnettipoftheday
/archive/2008/11/18/introduction-to-sharepoint-development-deploy-a-user-control-in-sharepoint.aspx
![Page 21: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/21.jpg)
Demo
![Page 22: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/22.jpg)
Demo
![Page 23: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/23.jpg)
ReferencesDot Net Mafia Bloghttp://www.dotnetmafia.com
Visual Studio Extensions for SharePoint (VSeWSS 1.3) CTPhttps://connect.microsoft.com/site/sitehome.aspx?SiteID=428
STSDevhttp://www.codeplex.com/stsdev
SharePoint Blogshttp://www.sharepointblogs.com
WSPBuilderhttp://www.codeplex.com/wspbuilder
![Page 24: Deploying Code In SharePoint](https://reader033.fdocuments.in/reader033/viewer/2022061209/548b834ab479594e638b45e5/html5/thumbnails/24.jpg)
Questions?