360 likes | 490 Vues
The Plan. Introduction ? You are hereFeature PresentationDeveloping against SharePoint RemotelyNext Topic SelectionRandom Stuff. User Group Goals. Provide a community for SharePoint DevelopersShare development knowledgeExchange tips/tricks/other/free pizzaAdd 2,000 List Items
E N D
1. Minneapolis Office Developer Interest Group (MODIG) July 22, 2008
Developing against SharePoint Remotely
(No Object Model Allowed!)
2. The Plan Introduction ? You are here
Feature Presentation
Developing against SharePoint Remotely
Next Topic Selection
Random Stuff
3. 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
4. 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
5. Call for Cool Stuff Created something cool?
Send Screenshots or Videos
We’ll try to feature some items here
6. 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
7. 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)
8. 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
9. Working with SharePoint Remotely
10. 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!
11. Remote Possibilities… SharePoint Designer!
OOTB WSS Web Services
OOTB MOSS Web Services
Custom Web Services
FP RPC
WSS RPC
12. SharePoint Web Services
13. 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
14. SharePoint Web Services What’s available in WSS
15. SharePoint Web Services What’s available in MOSS
16. DEMO: The basics Add a Web Reference and get back a list of lists for a web
17. DEMO: Play from PoSH! Use the Get-WebService Proxy Generator $p = C:\Temp\Get-WebService.ps1 -url "http://modig/_vti_bin/lists.asmx“
$p|gm
$p.GetListCollection()
$p.GetListCollection().List$p = C:\Temp\Get-WebService.ps1 -url "http://modig/_vti_bin/lists.asmx“
$p|gm
$p.GetListCollection()
$p.GetListCollection().List
18. 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
19. DEMO: I do what I want Deploy and consume a custom Web Service
20. Remote Procedure Call
21. 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
22. SharePoint RPC What’s available - FPRPC
23. SharePoint RPC What’s available – WSS RPC
24. 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.
25. SharePoint RPC How do I use them?
26. DEMO: JavaScript Test Page Submit RPC commands via JavaScript
27. SharePoint RPC How do I use them?
Not just a JavaScript thing :-)
Use .NET to submit RPC commands
28. SharePoint RPC Where can I learn more?
SharePoint Designer knows!
Use Fiddler to watch what SPD is doing
29. DEMO: Learn from SPD Use Fiddler to watch the HTTP traffic between SharePoint Designer and SharePoint
30. SharePoint RPC Where can I learn more?
HubKey’s document-focused RPC Library
31. DEMO: Play with HubKey’s Framework Get a list of documents
32. Resources
33. 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
34. Resources Blogs:
http://www.iwkid.com/blog
http://www.tonstegeman.com/blog
PowerShell Proxy Generator
http://www.nivot.org/NewImprovedGetWebServiceProxyGeneratorForPowerShell.aspx
35. 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
36. Next Meeting Planning Possible Topics
Workflow
Timer Jobs/Alert Event
Panel/Roundtable
General Site Provisioning (Site Defs/Templates/Features)
…
More RPC
37. Random Stuff Raymond Mitchell
Inetium
http://www.iwkid.com