2. Damjan Tomić
• CTO, IT BIZ Solutions doo
• Radi sa SharePoint-om od 2004. godine.
• Publishing portali, intranet portali, migration alati, alati za developere
IT BIZ Solutions doo
Document & content management sistemi
(MS SharePoint, EMC Documentum)
3. Agenda
• Istorijat Sinergija portala
• Prelazak na SharePoint 2007
• LiveID mehanizam za autentifikaciju
• Migracija na SharePoint 2010
• Web partovi (Registracija, upitnici, prikaz agende)
• Web servisi za integraciju sa spoljnim sistemima (Finansije, kartice,
win phone app)
• Mini tips za developere
4. Istorijat Sinergija portala
• Skoro svake godine je pravljen novi sajt
• Korisnici su sa svakim novim sajtom dobijali nove login podatke
• Prethodni podaci nisu postojali na novim sajtovima
• Menadžment Sinergije nije imao način da u bilo kom trenutku sa par
klikova dodje do izveštaja o broju registrovanih, uplatama, posetama i
sl.
5. Prelazak na SharePoint 2007
• U februaru 2010. godine je započet projekat Sinergija portala na
SharePoint platformi
• Portal je pušten u produkciju u junu 2010.
• SharePoint 2007 Publishing Portal
• Arhitektura sistema:
• Windows Server 2008 R2, Hyper-V sa 3 VM: DC, Exchange, SharePoint
• Logovanje korisnika preko Windows auth/Forms auth/LiveID auth
6. Migracija na SharePoint 2010
• Pre početka registracije za Sinergiju 11 je obavljena migracija portala
sa SharePoint 2007 na SharePoint 2010
• Instalirana nova VM sa SharePoint 2010
• Koraci za migraciju:
• Instalirati sve custom web partove
• Na SQL serveru uraditi restore baze sa SP2007 portala
• Kroz SP Central Admin kreirati novu web aplikaciju
(setovati host header, port, claims auth)
• Obrisati content bazu od novokreirane web aplikacije
• Izvršiti sledeću powershell naredbu:
Mount-SPContentDatabase -Name WSS_Content_dbname -WebApplication http://www.mssinergija.net
7. …Migracija na SharePoint 2010
• …koraci za migraciju:
• Iz central administracije promeniti site collection administratora za upravo restore-ovani
site collection
• Ukoliko postoji potreba kopirati fajlove na file system (resurse u App_GlobalResources, js
fajlove u 14TEMPLATELAYOUTS)
• Izvršiti izmene u web.config fajlu nove aplikacije (SafeControls, PageParserPaths,
membership)
• Migracija korisnika
• Claims auth
• LiveID nalozi
8. Migracija Live Id naloga
• Izmene u Membership provideru
• Izmene u web.config-u SecurityTokenService web service-a
• Application pool identity za SecurityTokenService web service mora biti
član Farm Admin grupe
• Provisioning SecurityTokenService aplikacije
PS C:Userskorisnik> $sts = Get-SPServiceApplication | ?{$_ -match "Security"}
PS C:Userskorisnik> $sts
DisplayName
TypeName
Id
------------------Security Token Se... Security Token Se... 5fe15a64-f551-4417-a5c0-42b11e699be6
PS C:Userskorisnik> $sts.Status
Online
PS C:Userskorisnik> $sts.Provision()
11. Web servisi za integraciju sa spoljnim
sistemima
• Finansije
• Evidencija uplata
• Poziva ga kompanija koja radi billing
• Kartice
• Preuzimanje podataka o učesnicima Sinergije, salama i predavanjima
• Evidentiranje preuzimanja kotizacionog paketa
• Evidentiranje prisustva na predavanju
• Win phone app
• Preuzimanje agende u json formatu pripremljenom za Win phone app
12. Mini tips za developere
Kako koristiti log4net iz web parta?
• Deploy-ovati log4net assembly u GAC
• Dodati log4net assembly u <SafeControls> u web.config-u od SP web aplikacije
• Napraviti standardni log4net.config fajl i publish-ovati ga u 14CONFIG folder
• U AssemblyInfo.cs dodati sledeću liniju:
[assembly: log4net.Config.XmlConfigurator(ConfigFile = @"C:Program FilesCommon FilesMicrosoft Shared" + @"Web Server
Extensions14CONFIGlog4net.config", Watch = true)]
• Log fajlovi će se nalaziti ispod C:inetpubwwwrootwssVirtualDirectoriesPORT
• Standardno korišćenje iz koda:
ILog log = LogManager.GetLogger(“my-logger");
log.Info(“zdravo log4nete”)
13. Mini tips za developere
Kako generisati pdf fajl na SharePoint-u?
Word Automation Services
Konverzija svih formata koje podržava MS Office Word
string wordFile = list.ParentWeb.Url + "/" + ... ;
string pdfFile = wordFile.Replace(".docx", ".pdf");
ConversionJobSettings jobSettings = new ConversionJobSettings();
jobSettings.OutputFormat = SaveFormat.PDF;
ConversionJob pdfConversion = new ConversionJob("Word Automation Services", jobSettings);
pdfConversion.UserToken = list.ParentWeb.CurrentUser.UserToken;
pdfConversion.AddFile(wordFile, pdfFile);
pdfConversion.Start();
14. Hvala na pažnji!
Pitanja možete poslati na email
damjan.tomic@itbiz.rs
ili ih postaviti na LinkedIn stranici grupe.