Remote Development with SharePoint: Tips and Tricks
370 likes | 460 Vues
Join MODIG for a deep dive into developing against SharePoint remotely without using the Object Model. Discover SharePoint Web Services, RPC, and custom solutions to enhance your development experience. Share insights, demos, and more!
Remote Development with SharePoint: Tips and Tricks
E N D
Presentation Transcript
Minneapolis Office Developer Interest Group (MODIG) Raymond Mitchell Inetium July 22, 2008 Developing against SharePoint Remotely (No Object Model Allowed!) http://www.iwkid.com/
The Plan • Introduction You are here • Feature Presentation • Developing against SharePoint Remotely • Next Topic Selection • Random Stuff
User Group Goals • Provide a community for SharePoint Developers • Share development knowledge • Exchange tips/tricks/other/free pizza • Add 2,000 List Items….in JavaScript
User Group Format • Presentations • 1-2 per meeting (targeting 1.25 Hours) • Hopefully Demo Heavy (Slides are for MBAs) • Highlights of Nifty Things • See next slide • QA/Discussion/Random Things
Call for Cool Stuff • Created something cool? • Send Screenshots or Videos • We’ll try to feature some items here
Sharepointmn.com/modig/ • Our current home • Meeting information • Usually has the right time • Previous presentations • Running on SharePoint • As required by SharePoint User Group Law
Upcoming • Next Meeting • August 26 (Tuesday 5:30pm) • Topic: TBD – Hopefully later today • Location: Based on Feedback • MNSPUG • August 13 (9:00am – Noon) • Topic : Panel Discussion (sharepointmn.com)
The Plan • But, I love the Object Model! • Why you can’t use the OM all the time • Remote possibilities • SharePoint Web Services • Introduction • What’s available • How do I use them? • Hey – those don’t do what I want! • The dark alley that is RPC • Introduction • What’s available • How do I use them? • Where can I learn more? • Questions
But, I love the Object Model! • We all do… • You can only use the Object Model on the server • Scenarios: • Remote administration tools • Integration with desktop application • Silverlight!
Remote Possibilities… • SharePoint Designer! • OOTB WSS Web Services • OOTB MOSS Web Services • Custom Web Services • FP RPC • WSS RPC
SharePoint Web Services • Introduction • Located in C:\Program Files\Common Files\microsoft shared\Web Server Extensions\12\ISAPI • Accessible via http://site/_vti_bin/*.asmx
SharePoint Web Services • What’s available in WSS
SharePoint Web Services • What’s available in MOSS
DEMO: The basics • Add a Web Reference and get back a list of lists for a web
DEMO: Play from PoSH! • Use the Get-WebService Proxy Generator
SharePoint Web Services • Hey – those don’t do what I want! • Deploy your own Web Service! • Allows you to use the Object Model • Permissions/Deployment can be tricky
DEMO: I do what I want • Deploy and consume a custom Web Service
SharePoint RPC • Introduction • Remote Procedure Call • Execute commands via HTTP POST • Two kinds: • FrontPage RPC (FPRPC) • WSS RPC • Three Targets: • _vti_bin/_vti_adm/admin.dll • _vti_bin/_vti_aut/author.dll • _vti_bin/owssvr.dll
SharePoint RPC • What’s available - FPRPC
SharePoint RPC • What’s available – WSS RPC
SharePoint RPC • Permissions • Permissions count! You can only do with RPC what you have access to do via the Web UI • Once you have authenticated, a Request Digest is sent down that you can use for future calls.
SharePoint RPC • How do I use them?
DEMO: JavaScript Test Page • Submit RPC commands via JavaScript
SharePoint RPC • How do I use them? • Not just a JavaScript thing :-) • Use .NET to submit RPC commands
SharePoint RPC • Where can I learn more? • SharePoint Designer knows! • Use Fiddler to watch what SPD is doing
DEMO: Learn from SPD • Use Fiddler to watch the HTTP traffic between SharePoint Designer and SharePoint
SharePoint RPC • Where can I learn more? • HubKey’s document-focused RPC Library
DEMO: Play with HubKey’s Framework • Get a list of documents
Resources • Web Services @ MSDN: • http://msdn.microsoft.com/en-us/library/aa979690.aspx • RPC @ MSDN: • http://msdn.microsoft.com/en-us/library/ms442469.aspx • More than you ever wanted to know: • RPC Protocol Specifications • http://www.iwkid.com/blog/Lists/Posts/Post.aspx?ID=22 • http://msdn.microsoft.com/en-us/library/cc313171.aspx
Resources • Blogs: • http://www.iwkid.com/blog • http://www.tonstegeman.com/blog • PowerShell Proxy Generator • http://www.nivot.org/NewImprovedGetWebServiceProxyGeneratorForPowerShell.aspx
Resources • HubKey C# Code Library http://geek.hubkey.com/2008/07/programatically-manage-remote-documents.html • Minnesota Silverlight User Group http://www.ilmservice.com/silverlight/ • SharePoint + Silverlight User Group Session • Tuesday, September 16th
Next Meeting Planning • Possible Topics • Workflow • Timer Jobs/Alert Event • Panel/Roundtable • General Site Provisioning (Site Defs/Templates/Features) • … • More RPC
Random Stuff Raymond Mitchell Inetium http://www.iwkid.com Feedback Forms/Giveaway Mingle, Eat, Feedback See you next time!