370 likes | 454 Views
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
E N D
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!