basic developer knowledge that every sharepoint admin must have randy williams, mvp moss synergy...
TRANSCRIPT
![Page 1: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/1.jpg)
Basic Developer Knowledge That Every SharePoint Admin Must Have
Randy Williams, MVP MOSS
Synergy Corporate Technologies
![Page 2: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/2.jpg)
Session Overview
• SharePoint Technologies• Developing Apps on SharePoint• Deploying Apps on SharePoint• Features• Site Definitions• Code Access Security• Troubleshooting
![Page 3: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/3.jpg)
SharePoint Technologies
.NET 2.0 Framework
ASP.NET ADO.NET Security
.NET 3.0 FrameworkWorkflow
WSS & MOSS UI
Windows APIOS
.NET
SharePointAPI
…
Web Services
SharePointUI
Custom Solutions 3rd Party In house
WSS Object Model
MOSS Object Model
![Page 4: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/4.jpg)
Custom SharePoint Solutions
• Developers build solutions on SharePoint just like Microsoft did
• Multiple ways to build a solution● Use SharePoint UI (webs, lists, libraries)● Office Products
• MS Access, Excel, InfoPath
● SharePoint Designer● Visual Studio
![Page 5: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/5.jpg)
SharePoint Designer
• Best tool for customizing SharePoint● Master/site pages● CSS● Web parts (e.g. DFWP)● Custom Workflow
• Risk exposure is isolated & limited• Typically done directly on production
server
![Page 6: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/6.jpg)
Visual Studio
• Best tool for building applications● Features, site definitions, web parts, custom
field types, complex workflow• Risk exposure is high• Done in a development environment
● Recommend local development• Staged deployment into test and
production environments
![Page 7: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/7.jpg)
How to deploy applications?
• One answer: SharePoint Solutions• Single file (.wsp) that contains all
configuration, files, and code• Solution lifecycle
● Add, Deploy, Retract, Delete• STSADM (all four)• Central Admin (all but add)• Insist the development team build them
![Page 8: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/8.jpg)
Demo – SharePoint Solution
![Page 9: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/9.jpg)
Features
• Snap-in functionality• Dozens are built in to product• Web parts, pages, workflow, menu
commands, list templates, others• Feature scope
● Farm, Web app, Site collection, Web• Feature lifecycle
● Install, Activate, Deactivate, Uninstall
![Page 10: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/10.jpg)
Demo – Feature Lifecycle
![Page 11: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/11.jpg)
Site Definitions
• Blueprint for newly created web sites● Defines navigation, features, master page,
lists• Stored in 12\Template\SiteTemplates• Developers can create custom ones• Fantastic 40• Site definitions vs site templates
![Page 12: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/12.jpg)
Web Parts
• Developed using Visual Studio• Personalization• Where to place assembly?
● Bin folder or Global Assembly Cache• Recommended ways to deploy
● Using a SharePoint Solution● Via a Feature
![Page 13: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/13.jpg)
Custom Field Types
• Supplement to built in types• Developers define
● How to collect information (input)● How information is processed (validation)● How to store in content database● How to display (output)
• Issues to consider
![Page 14: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/14.jpg)
Event Handlers (Receivers)
• Developers can enhance how changes are made
• Before and after events• Events exist for items, lists, webs,
Features, and others• Common item event operations include
● Add, Update, Delete, Check-In/Out
![Page 15: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/15.jpg)
Code Access Security (CAS)
• .NET technology to secure code based on origin
• Based on concept of trust• Bin folder for web application – partially
trusted• Global Assembly Cache – fully trusted• Level defined in web.config
● WSS_minimal, WSS_medium
![Page 16: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/16.jpg)
CAS Guidelines
• Do not deploy assemblies to GAC unless they are genuinely trusted● Custom/3rd party code should be tested
• Be cautious about elevating trust in web.config● Definitely avoid Full trust
• It is difficult, but developers can create custom CAS policies
![Page 17: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/17.jpg)
web.config
• XML file for SharePoint configuration• One per web application• Useful sections to know
● <SafeControls>● <trust>● <customErrors> & <SafeMode CallStack>● <authentication>● <identity>
![Page 18: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/18.jpg)
Demo – web.config Tour
![Page 19: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/19.jpg)
Troubleshooting Tips
• “An unexpected error has occurred”• Event Viewer – Application log• SharePoint logs
● ULS Log viewer• Resetting application pool• Try to reproduce in test environment
![Page 20: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/20.jpg)
Demo – Troubleshooting
![Page 21: Basic Developer Knowledge That Every SharePoint Admin Must Have Randy Williams, MVP MOSS Synergy Corporate Technologies rwilliams@synergyonline.com](https://reader036.vdocument.in/reader036/viewer/2022070409/56649e915503460f94b960ca/html5/thumbnails/21.jpg)
Questions?
• My blog● http://sharepointhawaii.com/randywilliams