SlideShare a Scribd company logo
1 of 17
WSS Solution Framework
Cos’è e a cosa serve Il WSS solution framework fornisce una metodologia e degli strumenti per estendere WSS raggruppando tutto quanto è necessario in un unico file chiamato solution file.  Un solution file è un file CAB con estensione .WSP. Il file è deployable e riusabile, può contenere un set di elementi attivabili e disattivabili individualmente (Feature) ed è l’unico modo per eseguire automaticamente il deployment di funzionalità su una SharePoint server farm.  In una multiple server farm, il solution framework gestisce automaticamente l’istallazione su tutti i server.  Una volta creato dallo sviluppatore può essere consegnato ad un server administratore distribuito ed istallato su diversi server.
A cosa serve Con una Solution si può: Istallare Features Istallare assemblies nella GAC  Istallare assemblies nella directory BIN di una web application  Aggiungere assembly descriptions alla sezione safecontrols del web.config. Settare delle Code Access Security configurations. Istallare file nelle directory di SharePoint (C:rogramFilesommonFilesicrosoftSharedeb server extensions2 detto anche 12 hive. Istallare una site definition.
A cosa serve Una Featureincapsula una funzionalità per estendere il coreproductdi SharePoint. E’ un insieme di file XML che descrivono elementi di WSS attivabili in scope specifici. Un feature manifest file checontiene le info generichesulcontenutodella feature e  deglielement manifest file checontengono le informazioni circa glispecificielementiche la compongono.  Con una Feature si può:  Aggiungere una site column Aggiungere un contenttype Aggiungere una list template e creare una list instance Aggiungere custom actions ai menu di SharePoint Istallare web parts, master pages, layout pages, immagini e altri contenuti Ecc
Cosa contiene, com’è fatta Figure 15. Anatomy of a SharePoint solution Una Solution package contiene: Assemblies .NET contenenti la logica degli elementi inclusi nella soluzione. File da deployare come immagini, file per il multilingua, css, jse altro.  File xml per il delivery di template e la definizione di siti, liste, document library, fields, contenttypes, e altro. File di configurazione per il settaggio dei front-end Web server in cui si fa il deploy. Manifest file per guidare il processo di deploy, elencando tutti gli asset contenuti nella solution (riferimenti a file), le loro target locations e configurazioni varie.
Come crearlo Organizzaregerarchicamenteivari files in cartelle dedicate. Creareil manifest file nel root folder. Creareun ddf file nel root folder. Il file DDF dichiaraquali file inserirenel cabinet. Vieneusatodamakecab.exe per creareil file CAB.  Molti productivity tool possono generare i file manifest, ddf e wsp automaticamente.
Ciclo di vita delle Solution WSP Aggiunta a Solution Store Deployment Attivazione/disattivazione Features Aggiornamento Utilizzo Ritiro Cancellazione
Aggiuntadiuna Solution Significaaggiungere la solution al Solution Store (nelconfiguration database di WSS), ma senzaeffettuareil deploy dellecomponenti sui server. E’ possibilevisualizzareil Solution Store tramiteilsito Central Administration di SharePoint. Bisognacopiareil file .wspsul server cheospitaunaCentral Administration edeseguireilcomando: stsadm -o addsolution -filename MySolution.wsp stsadm.exe si trova in  C:rogram FilesommonFilesicrosoftSharedeb server extensions2inbr />
Deploy di una Solution Il processodi deployment comprende le operazionidi: copiadi file nelle directory diWSS istallazionedi Feature aggiuntadi DLL alla GAC  Si può fare dalla CentralAdministration oppure tramite il comando stsadm.exe: stsadm -o deploysolution-nameMySolution.wsp prevede diversi parametri per configurare il tipo di deploy che si intende fare (es single server farm o multiple server farm, copia di dll nella GAC o nella Bin, uso della schedulazione, ecc) Crea un timer job che effettua il deploy in tutti i front-end Web server della farm, e in tutte le web application in SharePoint. Puòessereancheschedulato, utile per ambientidiproduzione.
Aggiornamento di una Solution L’aggiornamentopermettediaggiornare le variecomponentidiuna solution senzadoverdeattivare le sue Feature. Puòesserefatta solo tramitestsadm, usandoilcomando: stsadm -o upgradesolution -name <Solution Name> -filename <New Solution File> -immediate prevedealtriparametri
Ritiro di una Solution Il ritiro (Retraction) è l’operazioneopposta a quelladi deploy. Serve a rimuoveretutte le componentiistallatedalla solution duranteil deploy dalle web application.  Si faeccezione per le componentichesono in uso come site columns, site content types o liste. Non rimuove la solution dal Solution Store. Si può fare dalsitodella Central Administration o tramite:  stsadm -o retractsolution-nameMySolution.wsp come per il deploy prevede diversi altri parametri
Cancellazione di una Solution La cancellazioneelimina la solution dal Solution Store. Si può fare da Central Administration o tramiteilcomando: stsadm -o deletesolution -name MySolution.wsp Non puòesserefatta se è ancoradeployatasuqualche web application.
Istallazionediuna Feature  Le Featurepossonoessereistallateanchemanualmente (al difuoridiuna solution), ma la replica sututtii server non saràautomatica. Bisognacreareuna directory colnomedellaFeature in C:rogram Filesommon Filesicrosoft Sharedeb server extensions2EMPLATEEATURES   e copiarviil file feature.xml e glialtri file necessari (es element manifests ).  In seguitoeseguireilcomando: stsadm -o installfeature -name <Feature folder name> Per la disistallazioneeseguireilcomando: stsadm -o uninstallfeature -name <Feature folder name>
Attivazione di una Feature Da all’amministratore  la capacità di attivare e disattivare, su richiesta, specifici set di funzionalità.  Si può attivare tramite l’interfaccia di SharePoint oppure sempre tramite stsadm: stsadm -o activatefeature-name <Feature folder name> -url http://MyServer/MyWebSite 	dove http://MyServer/MyWebSite è l’URL del web site in cui attivare la Feature. Il comando per disattivare è: stsadm -o deactivatefeature-name <Feature folder name> -url http://MyServer/MyWebSite
Attivazione di una Feature Ogni feature ha uno scope di destinazione, questo vuol dire che se ad esempio lo scope fosse un sito web, l’amministratore potrebbe aggiungere una funzionalità ad un sito e lasciarla disattivata su un altro. Uno Scope definiscequindiilcontesto in cui una feature puòessereattivata/disattivataedentro cui le sue componentisonodeployabili e visibili. Non tutte le componentidiuna feature comunquepossonoessereistallate in tuttiicontesti. Es. Un content type puòavere come scope solo una site collection non puòesserelimitato ad un sito web oppure un List Template puòaverevisibilità solo all’internodi un web site. Gli scope possibilisonoquattro:  Farm – Attivabile o disattivabileda Central Administration, Operations section, e Manage Farm FeaturesnelgruppoGlobal Configuration.  Web Application – Attivabile o disattivabileda Central Administration, Application Management section, e Manage Web Application FeaturesnelgruppoSharePoint Web Application Management.  Site Collection – Attivabile o disattivabiledai settings del root web site, in Site Collection FeaturesnelgruppoSite Collection Administration.  Web Site – Attivabile o disattivabiledai  settings di un web site, in Site FeaturesnelgruppoSite Administration.
Featurereceiver L’attivazionediuna feature effettuail provisioning nello scope diattivazionedituttiglielementidefiniti in manieradichiarativatramitei file elements.xml. Per questaoperazionesifausoditutti I file e risorsecontenutinella Feature chesonostaticopiati e dispostinelleposizionidicompetenzadurantel’istallazione. All’attodell’attivazione (cosi come anchedurantel’istallazione, la disistallazione e la disattivazione) WSS fascattare un eventochepuòesseregestitodaunaclassechiamatafeature receiver chesitrovanella GAC.  La classefeature receiver vieneinserita in una DLL quandosicrea la feature e vienecopiatanella GAC durantel’istallazione.  Nel file feature.xml sipuòindicaretramitegliattributiReceiverAssembly e ReceiverClass.  Negli handler dellaclassesipuòinteragire con l’object model di SharePoint  edeffettuarequalsiasioperazione, necessaria al funzionamentodella Feature. In particolarmodo (ma non solo) tutte le operazioniche non possonoesseresvoltetramite la logicadichiarativadei file element.xml (come l’aggiuntadi un campo di lookup ad unalista, la cancellazionedielementi, l’aggiuntadielementi al web.config, ecc).
Schema riassuntivo

More Related Content

Viewers also liked

8 Secrets To Success Workshop
8 Secrets To Success Workshop8 Secrets To Success Workshop
8 Secrets To Success WorkshopColleen Clukey
 
10 good reasons for using the solution focused approach
10 good reasons for using the solution focused approach10 good reasons for using the solution focused approach
10 good reasons for using the solution focused approachBRIEF
 
Elements of the Story: Problem and solution
Elements of the Story: Problem and solution Elements of the Story: Problem and solution
Elements of the Story: Problem and solution Me-an Cupo
 
Leading Successful Retreats
Leading Successful Retreats Leading Successful Retreats
Leading Successful Retreats Xinalani
 
Strategic Planning Facilitation Guide - 2010 PMI Region 5 Conference
Strategic Planning Facilitation Guide - 2010 PMI Region 5 ConferenceStrategic Planning Facilitation Guide - 2010 PMI Region 5 Conference
Strategic Planning Facilitation Guide - 2010 PMI Region 5 Conferencemmm2033
 
Strengths & Capabilities
Strengths & CapabilitiesStrengths & Capabilities
Strengths & CapabilitiesBelinda Willis
 
Solution Focus approach to complex cases
Solution Focus approach to complex casesSolution Focus approach to complex cases
Solution Focus approach to complex casesNick Burnett
 
Solution focused therapy ppt
Solution focused therapy pptSolution focused therapy ppt
Solution focused therapy pptLinda Ellison
 
Sample Staff Retreat
Sample Staff RetreatSample Staff Retreat
Sample Staff Retreatvtgoodideas
 
Prioritizing Product Ideas
Prioritizing Product IdeasPrioritizing Product Ideas
Prioritizing Product IdeasDerrick Fountain
 
Company Retreat - Marketing Presentation
Company Retreat - Marketing PresentationCompany Retreat - Marketing Presentation
Company Retreat - Marketing PresentationCarrie Martinelli
 
Solution Focused Therapy
Solution Focused TherapySolution Focused Therapy
Solution Focused TherapyTim Bingham
 
Squiggle birds
Squiggle birdsSquiggle birds
Squiggle birdsDave Gray
 
Mastering the Art of Solution-Focused Counseling (Handouts)
Mastering the Art of Solution-Focused Counseling (Handouts)Mastering the Art of Solution-Focused Counseling (Handouts)
Mastering the Art of Solution-Focused Counseling (Handouts)Jeffrey Guterman
 
Solution focused approach to agile coaching at Agile Central Europe
Solution focused approach to agile coaching at Agile Central EuropeSolution focused approach to agile coaching at Agile Central Europe
Solution focused approach to agile coaching at Agile Central EuropePierluigi Pugliese
 
Leadership Secrets of Mr. Potato Head - Facilitation Edition
Leadership Secrets of Mr. Potato Head - Facilitation EditionLeadership Secrets of Mr. Potato Head - Facilitation Edition
Leadership Secrets of Mr. Potato Head - Facilitation EditionTRI Leadership Resources
 

Viewers also liked (20)

8 Secrets To Success Workshop
8 Secrets To Success Workshop8 Secrets To Success Workshop
8 Secrets To Success Workshop
 
10 good reasons for using the solution focused approach
10 good reasons for using the solution focused approach10 good reasons for using the solution focused approach
10 good reasons for using the solution focused approach
 
Elements of the Story: Problem and solution
Elements of the Story: Problem and solution Elements of the Story: Problem and solution
Elements of the Story: Problem and solution
 
Leading Successful Retreats
Leading Successful Retreats Leading Successful Retreats
Leading Successful Retreats
 
Strategic Planning Facilitation Guide - 2010 PMI Region 5 Conference
Strategic Planning Facilitation Guide - 2010 PMI Region 5 ConferenceStrategic Planning Facilitation Guide - 2010 PMI Region 5 Conference
Strategic Planning Facilitation Guide - 2010 PMI Region 5 Conference
 
Ws positive no
Ws positive noWs positive no
Ws positive no
 
Focus On Solution
Focus  On SolutionFocus  On Solution
Focus On Solution
 
Strengths & Capabilities
Strengths & CapabilitiesStrengths & Capabilities
Strengths & Capabilities
 
Solution Focus
Solution FocusSolution Focus
Solution Focus
 
Solution Focus approach to complex cases
Solution Focus approach to complex casesSolution Focus approach to complex cases
Solution Focus approach to complex cases
 
Solution focused therapy ppt
Solution focused therapy pptSolution focused therapy ppt
Solution focused therapy ppt
 
Sample Staff Retreat
Sample Staff RetreatSample Staff Retreat
Sample Staff Retreat
 
Prioritizing Product Ideas
Prioritizing Product IdeasPrioritizing Product Ideas
Prioritizing Product Ideas
 
Company Retreat - Marketing Presentation
Company Retreat - Marketing PresentationCompany Retreat - Marketing Presentation
Company Retreat - Marketing Presentation
 
Solution Focused Therapy
Solution Focused TherapySolution Focused Therapy
Solution Focused Therapy
 
Squiggle birds
Squiggle birdsSquiggle birds
Squiggle birds
 
Mastering the Art of Solution-Focused Counseling (Handouts)
Mastering the Art of Solution-Focused Counseling (Handouts)Mastering the Art of Solution-Focused Counseling (Handouts)
Mastering the Art of Solution-Focused Counseling (Handouts)
 
Solution focused approach to agile coaching at Agile Central Europe
Solution focused approach to agile coaching at Agile Central EuropeSolution focused approach to agile coaching at Agile Central Europe
Solution focused approach to agile coaching at Agile Central Europe
 
The story of ant
The story of antThe story of ant
The story of ant
 
Leadership Secrets of Mr. Potato Head - Facilitation Edition
Leadership Secrets of Mr. Potato Head - Facilitation EditionLeadership Secrets of Mr. Potato Head - Facilitation Edition
Leadership Secrets of Mr. Potato Head - Facilitation Edition
 

Similar to Wss Solution Framework

DNM19 Sessione1 Orchard Primo Impatto (ita)
DNM19 Sessione1 Orchard Primo Impatto (ita)DNM19 Sessione1 Orchard Primo Impatto (ita)
DNM19 Sessione1 Orchard Primo Impatto (ita)Alessandro Giorgetti
 
What's new in ASP.NET 4.0
What's new in ASP.NET 4.0What's new in ASP.NET 4.0
What's new in ASP.NET 4.0XeDotNet
 
WordPress, CMS/Blog per “tutte” le esigenze
WordPress, CMS/Blog per “tutte” le esigenzeWordPress, CMS/Blog per “tutte” le esigenze
WordPress, CMS/Blog per “tutte” le esigenzeRaoul Pettenò
 
Webdays 2004 Blogfordummies2 Ok
Webdays 2004 Blogfordummies2 OkWebdays 2004 Blogfordummies2 Ok
Webdays 2004 Blogfordummies2 OkMassimo Schiro
 
Quick intro sul Source Control su SQL Server
Quick intro sul Source Control su SQL ServerQuick intro sul Source Control su SQL Server
Quick intro sul Source Control su SQL ServerAlessandro Alpi
 
Database under source control
Database under source controlDatabase under source control
Database under source controlKlab
 
Joomla! 1.5: CMS a mani tese verso gli sviluppatori
Joomla! 1.5: CMS a mani tese verso gli sviluppatoriJoomla! 1.5: CMS a mani tese verso gli sviluppatori
Joomla! 1.5: CMS a mani tese verso gli sviluppatoriGrUSP
 
Joomla! 1.5: CMS a mani tese verso gli sviluppatori
Joomla! 1.5: CMS a mani tese verso gli sviluppatoriJoomla! 1.5: CMS a mani tese verso gli sviluppatori
Joomla! 1.5: CMS a mani tese verso gli sviluppatoriAlessandro Nadalin
 
Drupal
DrupalDrupal
DrupalNaLUG
 
Enterprise Applications - Angular Day 2018
Enterprise Applications - Angular Day 2018Enterprise Applications - Angular Day 2018
Enterprise Applications - Angular Day 2018Paolo Galfione
 
Come portare il profiler di symfony2 in drupal8
Come portare il profiler di symfony2 in drupal8Come portare il profiler di symfony2 in drupal8
Come portare il profiler di symfony2 in drupal8Luca Lusso
 
Integrazione continua con TFS Build
Integrazione continua con TFS BuildIntegrazione continua con TFS Build
Integrazione continua con TFS BuildGian Maria Ricci
 
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018Marco Chiesi
 

Similar to Wss Solution Framework (20)

DNM19 Sessione1 Orchard Primo Impatto (ita)
DNM19 Sessione1 Orchard Primo Impatto (ita)DNM19 Sessione1 Orchard Primo Impatto (ita)
DNM19 Sessione1 Orchard Primo Impatto (ita)
 
Introduzione a Struts
Introduzione a StrutsIntroduzione a Struts
Introduzione a Struts
 
What's new in ASP.NET 4.0
What's new in ASP.NET 4.0What's new in ASP.NET 4.0
What's new in ASP.NET 4.0
 
WordPress, CMS/Blog per “tutte” le esigenze
WordPress, CMS/Blog per “tutte” le esigenzeWordPress, CMS/Blog per “tutte” le esigenze
WordPress, CMS/Blog per “tutte” le esigenze
 
DDive11 - xpages
DDive11 - xpagesDDive11 - xpages
DDive11 - xpages
 
Webdays 2004 Blogfordummies2 Ok
Webdays 2004 Blogfordummies2 OkWebdays 2004 Blogfordummies2 Ok
Webdays 2004 Blogfordummies2 Ok
 
Ddive Xpage852
Ddive Xpage852Ddive Xpage852
Ddive Xpage852
 
#dd12 grillo daniele_xpages_tips_tricks_rev2
#dd12 grillo daniele_xpages_tips_tricks_rev2#dd12 grillo daniele_xpages_tips_tricks_rev2
#dd12 grillo daniele_xpages_tips_tricks_rev2
 
Quick intro sul Source Control su SQL Server
Quick intro sul Source Control su SQL ServerQuick intro sul Source Control su SQL Server
Quick intro sul Source Control su SQL Server
 
Database under source control
Database under source controlDatabase under source control
Database under source control
 
ORM Java - Hibernate
ORM Java - HibernateORM Java - Hibernate
ORM Java - Hibernate
 
Joomla! 1.5: CMS a mani tese verso gli sviluppatori
Joomla! 1.5: CMS a mani tese verso gli sviluppatoriJoomla! 1.5: CMS a mani tese verso gli sviluppatori
Joomla! 1.5: CMS a mani tese verso gli sviluppatori
 
Joomla! 1.5: CMS a mani tese verso gli sviluppatori
Joomla! 1.5: CMS a mani tese verso gli sviluppatoriJoomla! 1.5: CMS a mani tese verso gli sviluppatori
Joomla! 1.5: CMS a mani tese verso gli sviluppatori
 
Drupal
DrupalDrupal
Drupal
 
Laravel Framework PHP
Laravel Framework PHPLaravel Framework PHP
Laravel Framework PHP
 
Enterprise Applications - Angular Day 2018
Enterprise Applications - Angular Day 2018Enterprise Applications - Angular Day 2018
Enterprise Applications - Angular Day 2018
 
Come portare il profiler di symfony2 in drupal8
Come portare il profiler di symfony2 in drupal8Come portare il profiler di symfony2 in drupal8
Come portare il profiler di symfony2 in drupal8
 
Integrazione continua con TFS Build
Integrazione continua con TFS BuildIntegrazione continua con TFS Build
Integrazione continua con TFS Build
 
Grasso Frameworks Ajax
Grasso Frameworks AjaxGrasso Frameworks Ajax
Grasso Frameworks Ajax
 
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018
Sviluppare un plugin WordPress da zero - WordCamp Bologna 2018
 

Recently uploaded

Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...Associazione Digital Days
 
Programma Biennale Tecnologia 2024 Torino
Programma Biennale Tecnologia 2024 TorinoProgramma Biennale Tecnologia 2024 Torino
Programma Biennale Tecnologia 2024 TorinoQuotidiano Piemontese
 
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...Associazione Digital Days
 
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...Associazione Digital Days
 
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...Associazione Digital Days
 
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...Associazione Digital Days
 
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...Associazione Digital Days
 
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”Associazione Digital Days
 
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...Associazione Digital Days
 

Recently uploaded (9)

Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
 
Programma Biennale Tecnologia 2024 Torino
Programma Biennale Tecnologia 2024 TorinoProgramma Biennale Tecnologia 2024 Torino
Programma Biennale Tecnologia 2024 Torino
 
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
 
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
 
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
 
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
 
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
 
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
 
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
 

Wss Solution Framework

  • 2. Cos’è e a cosa serve Il WSS solution framework fornisce una metodologia e degli strumenti per estendere WSS raggruppando tutto quanto è necessario in un unico file chiamato solution file. Un solution file è un file CAB con estensione .WSP. Il file è deployable e riusabile, può contenere un set di elementi attivabili e disattivabili individualmente (Feature) ed è l’unico modo per eseguire automaticamente il deployment di funzionalità su una SharePoint server farm. In una multiple server farm, il solution framework gestisce automaticamente l’istallazione su tutti i server. Una volta creato dallo sviluppatore può essere consegnato ad un server administratore distribuito ed istallato su diversi server.
  • 3. A cosa serve Con una Solution si può: Istallare Features Istallare assemblies nella GAC Istallare assemblies nella directory BIN di una web application Aggiungere assembly descriptions alla sezione safecontrols del web.config. Settare delle Code Access Security configurations. Istallare file nelle directory di SharePoint (C:rogramFilesommonFilesicrosoftSharedeb server extensions2 detto anche 12 hive. Istallare una site definition.
  • 4. A cosa serve Una Featureincapsula una funzionalità per estendere il coreproductdi SharePoint. E’ un insieme di file XML che descrivono elementi di WSS attivabili in scope specifici. Un feature manifest file checontiene le info generichesulcontenutodella feature e deglielement manifest file checontengono le informazioni circa glispecificielementiche la compongono. Con una Feature si può: Aggiungere una site column Aggiungere un contenttype Aggiungere una list template e creare una list instance Aggiungere custom actions ai menu di SharePoint Istallare web parts, master pages, layout pages, immagini e altri contenuti Ecc
  • 5. Cosa contiene, com’è fatta Figure 15. Anatomy of a SharePoint solution Una Solution package contiene: Assemblies .NET contenenti la logica degli elementi inclusi nella soluzione. File da deployare come immagini, file per il multilingua, css, jse altro. File xml per il delivery di template e la definizione di siti, liste, document library, fields, contenttypes, e altro. File di configurazione per il settaggio dei front-end Web server in cui si fa il deploy. Manifest file per guidare il processo di deploy, elencando tutti gli asset contenuti nella solution (riferimenti a file), le loro target locations e configurazioni varie.
  • 6. Come crearlo Organizzaregerarchicamenteivari files in cartelle dedicate. Creareil manifest file nel root folder. Creareun ddf file nel root folder. Il file DDF dichiaraquali file inserirenel cabinet. Vieneusatodamakecab.exe per creareil file CAB. Molti productivity tool possono generare i file manifest, ddf e wsp automaticamente.
  • 7. Ciclo di vita delle Solution WSP Aggiunta a Solution Store Deployment Attivazione/disattivazione Features Aggiornamento Utilizzo Ritiro Cancellazione
  • 8. Aggiuntadiuna Solution Significaaggiungere la solution al Solution Store (nelconfiguration database di WSS), ma senzaeffettuareil deploy dellecomponenti sui server. E’ possibilevisualizzareil Solution Store tramiteilsito Central Administration di SharePoint. Bisognacopiareil file .wspsul server cheospitaunaCentral Administration edeseguireilcomando: stsadm -o addsolution -filename MySolution.wsp stsadm.exe si trova in C:rogram FilesommonFilesicrosoftSharedeb server extensions2inbr />
  • 9. Deploy di una Solution Il processodi deployment comprende le operazionidi: copiadi file nelle directory diWSS istallazionedi Feature aggiuntadi DLL alla GAC Si può fare dalla CentralAdministration oppure tramite il comando stsadm.exe: stsadm -o deploysolution-nameMySolution.wsp prevede diversi parametri per configurare il tipo di deploy che si intende fare (es single server farm o multiple server farm, copia di dll nella GAC o nella Bin, uso della schedulazione, ecc) Crea un timer job che effettua il deploy in tutti i front-end Web server della farm, e in tutte le web application in SharePoint. Puòessereancheschedulato, utile per ambientidiproduzione.
  • 10. Aggiornamento di una Solution L’aggiornamentopermettediaggiornare le variecomponentidiuna solution senzadoverdeattivare le sue Feature. Puòesserefatta solo tramitestsadm, usandoilcomando: stsadm -o upgradesolution -name <Solution Name> -filename <New Solution File> -immediate prevedealtriparametri
  • 11. Ritiro di una Solution Il ritiro (Retraction) è l’operazioneopposta a quelladi deploy. Serve a rimuoveretutte le componentiistallatedalla solution duranteil deploy dalle web application. Si faeccezione per le componentichesono in uso come site columns, site content types o liste. Non rimuove la solution dal Solution Store. Si può fare dalsitodella Central Administration o tramite: stsadm -o retractsolution-nameMySolution.wsp come per il deploy prevede diversi altri parametri
  • 12. Cancellazione di una Solution La cancellazioneelimina la solution dal Solution Store. Si può fare da Central Administration o tramiteilcomando: stsadm -o deletesolution -name MySolution.wsp Non puòesserefatta se è ancoradeployatasuqualche web application.
  • 13. Istallazionediuna Feature Le Featurepossonoessereistallateanchemanualmente (al difuoridiuna solution), ma la replica sututtii server non saràautomatica. Bisognacreareuna directory colnomedellaFeature in C:rogram Filesommon Filesicrosoft Sharedeb server extensions2EMPLATEEATURES e copiarviil file feature.xml e glialtri file necessari (es element manifests ). In seguitoeseguireilcomando: stsadm -o installfeature -name <Feature folder name> Per la disistallazioneeseguireilcomando: stsadm -o uninstallfeature -name <Feature folder name>
  • 14. Attivazione di una Feature Da all’amministratore la capacità di attivare e disattivare, su richiesta, specifici set di funzionalità. Si può attivare tramite l’interfaccia di SharePoint oppure sempre tramite stsadm: stsadm -o activatefeature-name <Feature folder name> -url http://MyServer/MyWebSite dove http://MyServer/MyWebSite è l’URL del web site in cui attivare la Feature. Il comando per disattivare è: stsadm -o deactivatefeature-name <Feature folder name> -url http://MyServer/MyWebSite
  • 15. Attivazione di una Feature Ogni feature ha uno scope di destinazione, questo vuol dire che se ad esempio lo scope fosse un sito web, l’amministratore potrebbe aggiungere una funzionalità ad un sito e lasciarla disattivata su un altro. Uno Scope definiscequindiilcontesto in cui una feature puòessereattivata/disattivataedentro cui le sue componentisonodeployabili e visibili. Non tutte le componentidiuna feature comunquepossonoessereistallate in tuttiicontesti. Es. Un content type puòavere come scope solo una site collection non puòesserelimitato ad un sito web oppure un List Template puòaverevisibilità solo all’internodi un web site. Gli scope possibilisonoquattro: Farm – Attivabile o disattivabileda Central Administration, Operations section, e Manage Farm FeaturesnelgruppoGlobal Configuration. Web Application – Attivabile o disattivabileda Central Administration, Application Management section, e Manage Web Application FeaturesnelgruppoSharePoint Web Application Management. Site Collection – Attivabile o disattivabiledai settings del root web site, in Site Collection FeaturesnelgruppoSite Collection Administration. Web Site – Attivabile o disattivabiledai settings di un web site, in Site FeaturesnelgruppoSite Administration.
  • 16. Featurereceiver L’attivazionediuna feature effettuail provisioning nello scope diattivazionedituttiglielementidefiniti in manieradichiarativatramitei file elements.xml. Per questaoperazionesifausoditutti I file e risorsecontenutinella Feature chesonostaticopiati e dispostinelleposizionidicompetenzadurantel’istallazione. All’attodell’attivazione (cosi come anchedurantel’istallazione, la disistallazione e la disattivazione) WSS fascattare un eventochepuòesseregestitodaunaclassechiamatafeature receiver chesitrovanella GAC. La classefeature receiver vieneinserita in una DLL quandosicrea la feature e vienecopiatanella GAC durantel’istallazione. Nel file feature.xml sipuòindicaretramitegliattributiReceiverAssembly e ReceiverClass. Negli handler dellaclassesipuòinteragire con l’object model di SharePoint edeffettuarequalsiasioperazione, necessaria al funzionamentodella Feature. In particolarmodo (ma non solo) tutte le operazioniche non possonoesseresvoltetramite la logicadichiarativadei file element.xml (come l’aggiuntadi un campo di lookup ad unalista, la cancellazionedielementi, l’aggiuntadielementi al web.config, ecc).