1.14k likes | 1.44k Views
Windows SharePoint Services 3.0. Miroslav Kubov čík DPE Group Microsoft Slovakia. Obsah. Architekt ú ra WSS 3.0 V ývojár nad WSS/MOSS Tvorba webpart-ov Práca s obsahom v WSS 3.0 WS a objektový model, udalosti Workflow Identity a práva WSS a nové webové trendy. MOSS 2007. WSS 3.0.
E N D
Windows SharePoint Services 3.0 Miroslav Kubovčík DPE Group Microsoft Slovakia
Obsah Architektúra WSS 3.0 Vývojár nad WSS/MOSS Tvorba webpart-ov Práca s obsahom v WSS 3.0 WS a objektový model, udalosti Workflow Identity a práva WSS a nové webové trendy
MOSS 2007 WSS 3.0 Windows Server
WSS 3.0portálová infraštruktúra pre tímové weby • Licenčne pokrytá licenciami Windows Server-a 2003/2008 • Základné vlastnosti • „document“ a „task“ management • Podpora Workflow • Podpora RSS Feed-ov • Bezpečnosť (až na úroveň položiek) • Typy obsahu • Udalosti asynchrónne aj synchrónne • „Features“ framework
Integrácia s ASP.NET • ASP.NET 2.0 HttpHandler • Inicializácia WSS začína až po kompletnom overení v ASP.NET 2.0 • Podpora všetkého, čo má ASP.NET 2.0 • Master pages, webparts
WSS úložište • Dáta aj konfiguráciaukladané na SQL Server • Základ pre webové farmy • Konfigurácia uložená v konfiguračnejdatabáze • Obsah a vlastné úpravy uložené v databáze obsahu
Základné členenie WSS • Farma • Najvyššia úroveň pre nasadenie WSS • Inštalácia jednoho a viac serverov • Každá farma má iba jednu konfiguračnú databázu • Web. aplikácia (Virtual Server) • IIS Web site rozšírený o WSS • Site Collection (Site) • Kontajner pre ďalšie dielčie WSS Site • Obsahuje top-level site • Zdieľa nastavenia • Uložené v jednej kontextovej databáze • Site (Web) • Kolekcia stránok a ďaľších dielčich kolekcií • Používá rovnakú kontextovúdatabázu ako rodič
Kolekcie sajtov a sajty • Sajty sú oddelené na úrovni „Site Collections“ • Kolekcia sajtov má centralizované privilégia správy • Kolekcia sajtov vždy obsahuje „top-level“ sajt • Kolekcia sajtov obsahuje hierarchiu sajtov potomkov • Webováaplikácia môže podporovať tisíce kolekcií sajtov (v závislosti na kapacite systému )
Obsah sajtu • Zoznamy (lists) • Obsah uložený po položkách • formuláre pre vkladanie, rôzne pohľady na položky, …. • Knižnice súborov („document library“) • Určené pre zdieľanie súborov • Podpora operácií check-in/check-out, verzovania dokumentov,… • Webparty • Základné stavebné prvky WSS • Všetko je webpart – zoznamy, knižnice, … • Základné webparty sú súčasťou WSS • Možnosť dopĺňať vlastné
Typystránok sajtu • Stránky v rámci site • Na disku uložená východzia nezmenená verzia v „.aspx“ súbore • Upravená verzia je uložená v kontextovej databáze • Aplikačné stránky • settings.aspx, …. • Uložené na disku v adresári _layouts • Rovnaké na úrovni celej farmy • Nedajú sa meniť
Základ definície sajtov - „_layouts“ • Virtuálny adresár pre WSS Web aplikácieC:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\LAYOUTS • Poskytuje relatívne URL pre všetky sites /_layouts/SiteSettings.aspx • Možnosť doplniť vlastné aplikačné stránky • /_layouts/images • Uložené štandardné WSS obrázky • Môžete ukladať aj vlastné obrázky
Obsah Architektúra WSS 3.0 Vývojár nad WSS/MOSS Tvorba webpart-ov Práca s obsahom v WSS 3.0 WS a objektový model, udalosti Workflow Identity a práva WSS a nové webové trendy
Profil SharePoint vývojára • WSS 3.0 Power User/Administrátor • Znalý architektúry WSS 3.0 • Ovláda jeden z jazykov .NET 2.0 • Prehľad v .NET 3.0 (WF + AJAX/Silverlight) • Pokročilejšie znalosti ASP.NET 2.0 • Master pages, Web Parts, bezpečnosť …
Typy riešení • Založené na kóde • .NET assembly rozširujúca platformu WSS • Vlastné sajty a aplikačné stránky • Založené na schéme • Nové definície šablón (sajt, zoznam, pole, ...) • Kombinácia vyššie zmienených
Vývojové prostredieVzdialené od servera • Centrálny WSS server • Vývoj z klientského OS • Výhody • Netreba lokálnu inštaláciu servera • Centralizácia záloh + systému na kontrolu kódu • Nevýhody • Komplikovaný vzdialený„debugging“ • Extra kroky pre zabalenie a nasadenie kódu pri testovaní
Vývojové prostredieLokálne • Vývoj nad Windows Server-om • Server v roli workstation • Alebo vývoj v Virtual PC • Výhody • Zvýšenie produktivity • Lokálne testovanie/ladenie • Nevýhody • Vývojárska disciplína • Pre kontrolu kódu „check-iny“ na centrálny server • Doporučované
Vývojové nástroje • Dizajnovanie v SharePoint Designer-e • Visual Studio 2005 • S rozšíreniami WSS Extensions • Visual Studio 2008 • WSS extensions zatiaľ „vo výrobe“ • Obsahuje Sharepoint Workflow Template • Možnosť ladenia klientských skriptov
Čo vyvíjať ? ASP.NET časti:Site Pages Application Pages Images Style Sheets User ControlsMaster Pages Navigation Controls Browser:HTTP GEThttp://server/appname Kompilované doplnky:WebPart-y Spracovanie udalostí Workflow aktivity Workflowkód Schémy:Site Definitions Feature Definitions List Definitions Content Types/Fields Práca s dátami: (cez Object Model) IIS / ASP.NET WSS Databáza /bin aleboGACWebPart1.dll EventHandler.dll Site Definitiononet.xmlDefault.aspx List Definitionschema.xmlallitems.aspx Webové služby: (ktoré volajú Object Model) Vzdialení klienti (ktorí volajú Webové služby)
MicrosoftVisualStudio OfficeSharePointDesigner + Browser Konštrukcia web.sajtu Vlastný kód (ak treba) Create lists and doclibs Tvorba zoznamov a dok.knižníc Web Parts Design Web pages Webpart-y Dizajn webových stránok Site Definitions Site Definitions No-code data view/forms Formuláre a pohľady na dáta bez kódovania List Definitions Workflow bez kódovania List Definitions No-code workflows Event handler-y Použitie webpart-ov Event handlers Web part hookup
Master Pages • Master Pages súsúčasťou ASP.NET 2.0 • efektívne riešenie pre vytváranie vzorov stránok • Master page definuje miesta pre vkladanie obsahu • WSS využíva princíp master pages • Úprava cez SharePoint Designer • Každá stránka sajtu sa odkazuje na master page • WSS sajtobsahuje Master Page Gallery
Úprava master page v SharePoint Designer-e
Webpart-y • Základné stavebné kamene pre tvorbu portálu • Podporujú personalizáciu
Nasadenie WSS riešení • „Solution Package“je CAB archív s príponou „.wsp“ • Obsahujú súbory riešenia pre nasadenie na webový server • Popis v súbore „manifest.xml“ • evolúcia Web Part Packages z WSS 2.0 • Čo sa dá nasadiť cez Solution Package • Feature definície • Aplikačné stránky • Assembly DLL • ...
Obsah Architektúra WSS 3.0 Vývojár nad WSS/MOSS Tvorba webpart-ov Práca s obsahom v WSS 3.0 WS a objektový model, udalosti Workflow Identity a práva WSS a nové webové trendy
História webpart-ov • Windows SharePoint Services 2.0 (WSS V2) • Vlastná infraštruktúra webpart-ov • ASP.NET 2.0 • Nová zabudovaná infraštruktúra pre webpart-y • Nepodporuje WSS v2 Web Parts • Windows SharePoint Services 2007 (WSS V3) • Podpora WSS v2 Web Parts • Podpora ASP.NET 2.0 Web Parts
Tvorba webpart-ov • Class library DLL • Potomok triedy ASP.NET Web Part • Preťaženie potrebných metód (RenderContents, …) • Uložiť DLL do adresára \bin alebo GAC • Nastaviť DLL knižnicu vweb.config v častiSafeControlako bezpečnú
<Safe Control> <configuration> <SharePoint> <SafeControls> <SafeControlAssembly="AcmeWebParts..." Namespace="AcmeWebParts" TypeName="*" Safe="True"/> </SafeControls> </SharePoint> </configuration>
Bezpečnosť webpart-ov • Bezpečnosť kontrolovaná pomocou CAS • Nastavenie bezpečnosti • OSVR_Minimal(východzie pre Office Server) • WSS_Minimum(východzie pre WSS V3) • WSS_Medium • Full <!– web.configv koreňovom adresári virtuálneho servera--> <configuration> <system.web> <!-- <trust level="WSS_Minimal" originUrl="" /> --> <trustlevel="Full"originUrl=""/> </system.web> </configuration>
Galéria webpart-ov • Galéria je na úrovni Site Collection • Zoznam webpart-ov použiteľných v sajte • Webpart-ydeklarované ako„SafeControls“môžu byť„automaticky“ doplnené do galérie (tlačidlo New) • Webparty je možné importovať do galérie pomocou „.webpart“a „.dwp“ súborov (tlačidloUpload)
Obsah Architektúra WSS 3.0 Vývojár nad WSS/MOSS Tvorba webpart-ov Práca s obsahom v WSS 3.0 WS a objektový model, udalosti Workflow Identity a práva WSS a nové webové trendy
Verzie dokumentov • Major a Minor verzia dokumentov • Pri ukladaní dokumentu (check-in) sa dá zvýšiť Minor alebo Major verzia dokumentu • Podľa práv uživatelia vidia buď poslednú Major alebo Minor verziu • Možnosť tvorby „draft“ verzií • Nastavovanie limitov • Špecifikovanie počtu „Major“ verzií, ktoré sú k dispozícii • Špecifikovanie, či sa majú „draft“ verzie odstrániť pri vytvorení novej „Major“ verzie • Verziovanie položiek v zoznamoch • Ukládajú sa zmeny metadát
RSS Feed • Automatická podpora RSS feed-u pre zoznamy • RSS feed _layouts/listfeed.aspx?List=%LIST_GUID%
„Site Columns“ • „Site column“je definícia stĺpčeka použiteľná v rámci sajtu • Stĺpec je uložený v Site Column Gallery • Použiteľné v ľubovoľnom zozname, knižnici dokumentov alebo ako typ obsahu („content type“) v rámci Site
Typy obsahu („Content Types“) • Obdoba „Site Columns“ • Obsahujú schému pre zoznamy • Definujú obmedzenia a požiadavky na položky • Ďalej môžu obsahovať • Stĺpce pre ukladanie metadát • Šablóny pre dokumenty • Formuláre pre New, Edit a Display • Event handler-y • Workflow
Indexovanie stĺpcov • Name Value Pair (NVP) Index • Pre tvorbu pohľadov nad veľkým počtom položiekNapr. všetky dokumenty splňujúce podmienku „Dátum Dokončenia“ = TODAY • V SQL Server-e sa vytvára tabuľka pre tento index • V požiadavkách sa používa iba jeden index
Požiadavky „Cross List“ • UNION naprieč viac zoznammi • Rozšírenie WSS Query jazyka • Dá sa použiť „list template“ alebo špecifické ID zoznamu • Môže využiť aj „column index“ • Používané v zabudovaných častiach • “My Documents”, “My Tasks” • Data View Web Part • Content By Query Web Part (MOSS)
Požiadavka „Cross List“ • Požiadavka prebehne v dvoch fázach • V prvej WSS vyberá relevantnézoznamy a prípadne použije NVP index pre odstránenie zoznamov, ktoré majú rovnaký obsah • V druhej fáze WSS prechádza dáta v každom zozname a prípadne použije NVP index pre urýchlenie • SPSiteDataQuery vracia DataTable SPSiteDataQuery.Query = @"<Where> <Eq> <FieldRef Name='Author'/> <Value Type='String'>'Fitzmaurice'</Value> </Eq> </Where>" SpSiteDataQuery.Lists = <Lists ServerTemplate="101">
Obsah Architektúra WSS 3.0 Vývojár nad WSS/MOSS Tvorba webpart-ov Práca s obsahom v WSS 3.0 WS a objektový model, udalosti Workflow Identity a práva WSS a nové webové trendy
SPGlobalAdmin SPWebServer SPVirtualServer SPControl SPSite SPWeb SPList SPListItem
Udalosti Event handler je .NET assembly obsahujúca aspoň jednu triedu spracovávajúcu udalosti WSS WSS 2.0 Iba pre knižnice dokumentov Asynchrónne spracovanie WSS 3.0 Rozšírené o zoznamy a typy obsahu Podpora pre zmenu schémy a aj položiek v zoznamoch Podpora pre synchrónne aj asynchrónne udalosti Synchrónne udalosti sú vyvolané PRED operáciou a dajú sa zrušiť Asynchrónne sú vyvolané PO operácii
Tvorba „event handler-a“ .NET class library Microsoft.SharePoint.dll Potomok WSS triedy SPItemEventReceiver alebo SPWebEventReciever using Microsoft.SharePoint; namespace Demos { public class MyEventHandler: SPItemEventReceiver { public override void ItemDeleting(SPItemEventProperties properties) {properties.Cancel = true; properties.ErrorMessage = “moja správa"; } public override void ItemDeleted(SPItemEventProperties properties) { // niečo urobíme } } }