Distribuire elementi dei siti tramite elementi Feature (SharePoint Server 2010)

 

Si applica a: SharePoint Server 2010

Ultima modifica dell'argomento: 2016-11-30

In questo articolo viene descritto come distribuire tramite elementi Feature personalizzazioni di elementi dei siti sviluppati. Gli elementi Feature consentono di controllare l'ambito in cui è possibile attivare e disattivare la personalizzazione dei siti, nonché di distribuire facilmente le personalizzazioni tra più server farm.

Contenuto della sezione:

  • Che cos'è un elemento Feature?

  • Quando utilizzare gli elementi Feature

  • Creare un elemento Feature

  • Installare e attivare un elemento Feature tramite Windows PowerShell

Che cos'è un elemento Feature?

Un elemento Feature è un contenitore di diverse estensioni definite di SharePoint Server 2010 ed è costituito da un insieme di file XML distribuiti in server Web front-end e server applicazioni. È possibile distribuire un elemento Feature come parte di un pacchetto della soluzione e attivare singolarmente un elemento Feature in siti di SharePoint Server.

Gli elementi Feature riducono la complessità inerente all'implementazione di semplici personalizzazioni dei siti. Consentono di ovviare all'esigenza di copiare blocchi estesi di codice per modificare semplici funzionalità, con una conseguente riduzione dei problemi di controllo delle versioni e di incoerenza che potrebbero verificarsi tra server Web front-end.

Gli elementi Feature semplificano l'attivazione o la disattivazione di funzionalità durante una distribuzione. Gli amministratori possono modificare con facilità il modello o la definizione di un sito attivando o disattivando un particolare elemento Feature nell'interfaccia utente.

Un elemento è un'unità atomica all'interno di un elemento Feature. L'elemento Feature viene utilizzato in un file Feature.xml per definire una caratteristica e specificare il percorso degli assembly, dei file, delle dipendenze o delle proprietà da cui è supportato. Un elemento Feature include un file Feature.xml e un numero qualsiasi di file che descrivono i singoli elementi. In un file Onet.xml viene utilizzato un altro elemento Feature proveniente da uno schema diverso per specificare che deve essere attivato un elemento Feature quando un sito viene creato dalla definizione di sito.

Un file Feature.xml in genere punta a uno o più file XML il cui tag <Elements> principale contiene le definizioni degli elementi che supportano l'elemento Feature. Gli elementi in SharePoint Server 2010 spesso corrispondono ai nodi discreti nel file Onet.xml o Schema.xml di Microsoft Office SharePoint Portal Server 2003. Esistono diversi tipi di elementi, ad esempio una voce di menu personalizzata o un gestore eventi.

Quando utilizzare gli elementi Feature

L'utilizzo di elementi Feature è il metodo consigliato per la distribuzione di parti di funzionalità, personalizzazioni o modifiche di configurazione nei server Web front-end. Gli elementi Feature consentono di gestire in modo flessibile le funzionalità in tutto il ciclo di vita, inclusi l'attivazione, l'aggiornamento e infine la disattivazione.

Gli elementi Feature possono essere utilizzati per distribuire in uno o più scenari tra quelli elencati di seguito elementi dei siti sviluppati:

  • Necessità di attivazione e disattivazione Quando si distribuiscono personalizzazioni di elementi dei siti in un elemento Feature, è possibile installare, attivare e disattivare l'elemento Feature tramite Windows PowerShell oppure tramite il modello a oggetti. Per attivare e disattivare un elemento Feature è inoltre possibile utilizzare il sito Web Amministrazione centrale.

  • Flessibilità dell'ambito È possibile attivare un elemento Feature per un singolo ambito, tra cui una farm, un'applicazione Web, una raccolta siti o un sito Web.

  • Implementazione distribuita semplificata È possibile distribuire un elemento Feature in più server farm nell'ambito di una soluzione.

  • Controllo tramite il modello a oggetti degli elementi Feature Il modello a oggetti degli elementi Feature consente di specificare l'elenco delle caratteristiche installate in un determinato ambito e di controllare se vengono attivate a livello di farm e di sito.

Utilizzare pacchetti delle soluzioni per creare pacchetti di elementi Feature da distribuire in ambienti diversi. Utilizzare ad esempio un pacchetto della soluzione per distribuire personalizzazioni tra workstation per sviluppatori e una farm di integrazione, nonché tra una farm di integrazione o workstation client di creazione e modifica e farm pilota o di produzione.

Creare un elemento Feature

Quando si crea una pagina Web personalizzata in SharePoint Server 2010 tramite il browser o SharePoint Designer, la pagina ASPX può appartenere solo alla raccolta siti radice del server che esegue SharePoint Server 2010. Per creare una pagina in una raccolta siti disponibile per l'intera farm e in tutte le raccolte siti, utilizzare una soluzione per distribuire la pagina nella cartella \14\Template\Layouts utilizzando l'elemento TemplateFiles nel file di manifesto della soluzione.

Come procedura consigliata in una farm è prevista la distribuzione di elementi Feature tramite un pacchetto della soluzione. Se è necessario ricreare un server o viene aggiunto un altro server alla farm, l'elemento Feature non dovrà essere aggiunto manualmente a ogni server Web front-end. Utilizzando pacchetti delle soluzioni, è possibile distribuire elementi Feature nuovi e aggiornati nella farm e sincronizzare un server Web front-end in modo che il relativo stato sia coerente con lo stato di altri server della farm.

Per controllare la disponibilità di una pagina personalizzata in una raccolta siti o in un sito Web, distribuire la pagina Web personalizzata come elemento Feature di SharePoint nell'ambito di una soluzione. Utilizzare l'elemento module nel file Feature.xml per distribuire una pagina Web utilizzando un ambito di raccolta siti e sito Web. I moduli vengono utilizzati spesso per implementare una pagina web part nel sito.

Un elemento Feature distribuito come parte di una soluzione viene installato automaticamente. Se si distribuisce manualmente un elemento Feature, sarà necessario installarlo e attivarlo. Vedere Install and activate a Feature by using Windows PowerShell più avanti in questo articolo.

Per creare e distribuire un elemento Feature personalizzato

  1. Creare un file Feature.xml. Di seguito è riportato un file Feature.xml di esempio, necessario per assegnare alla caratteristica un ID univoco e fare riferimento al file Module.xml.

    <?xml version="1.0"?>
    <Feature Id="8C4DD0CB-5A94-44da-9B7F-E9ED49C2B2DC" Title=
    "Custom Web page"
    Description="This simple example feature adds an ASPX page 
    with a hosted XmlFormView control" 
    Version="1.0.0.0" Scope="Web"
    xmlns="https://schemas.microsoft.com/sharepoint/">
    <ElementManifests>
        <ElementManifest Location="Module.xml"/>
    </ElementManifests>
    </Feature>
    
  2. Creare un file Module.xml. Di seguito è riportato un file Module.xml di esempio, contenente informazioni sulla pagina o sulle pagine che fanno parte della soluzione.

    <?xml version="1.0"?>
    <Elements xmlns="https://schemas.microsoft.com/sharepoint/">
        <module name="file" url="" path="">
            <file url="XmlFormViewPage.aspx" type="ghostable"> </file>
        </module>
    </Elements>
    
  3. Sostituire il valore url del file con il nome della pagina ASPX.

  4. Aggiungere una sottocartella alla definizione di elemento Feature nella directory di installazione Features nel computer server, generalmente contenuta in %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\14\TEMPLATE\FEATURES.

    Importante

    Come procedura consigliata è previsto l'utilizzo di nomi qualificati dettagliati per le sottocartelle create per le definizioni di elementi Feature. In questo modo si riduce il rischio di aggiungere più elementi Feature con gli stessi nomi e di sovrascrivere il file Feature.xml di un altro elemento Feature. Utilizzare ad esempio Contratto_RisorseUmane e Contratto_Amministrazione anziché Contratto.

  5. Aggiungere la pagina ASPX personalizzata in questa sottocartella per la definizione di elemento Feature.

  6. Aggiungere i file Feature.xml e Module.xml nello stesso percorso.

  7. Aggiungere l'elemento Feature a un pacchetto della soluzione.

    È possibile utilizzare Visual Studio 2010 per aggiungere l'elemento Feature a una soluzione oppure aggiungere manualmente un elemento FeatureManifests al file Manifest.xml della soluzione.

  8. Creare il pacchetto della soluzione.

    Per creare il pacchetto della soluzione, è possibile utilizzare Visual Studio 2010 oppure lo strumento Makecab.exe.

  9. Importare e distribuire il pacchetto della soluzione.

    Aggiungere la soluzione all'archivio delle soluzioni utilizzando il cmdlet Windows PowerShellAdd-SPSolution e quindi distribuire la soluzione dall'archivio delle soluzioni tramite il sito Web Amministrazione centrale o Windows PowerShell.

Per ulteriori informazioni sull'utilizzo di Visual Studio 2010 per aggiungere elementi Feature a pacchetti delle soluzioni, vedere Creazione di pacchetti delle soluzioni di SharePoint (https://go.microsoft.com/fwlink/?linkid=187035&clcid=0x410). Per ulteriori informazioni sulla creazione manuale di un pacchetto della soluzione o sull'utilizzo dello strumento Makecab.exe per la creazione del pacchetto, vedere Creazione di una soluzione (le informazioni potrebbero essere in lingua inglese) (https://go.microsoft.com/fwlink/?linkid=187036&clcid=0x410). Per ulteriori informazioni sulla distribuzione delle soluzioni, vedere Distribuire pacchetti delle soluzioni (SharePoint Server 2010).

Installare e attivare un elemento Feature tramite Windows PowerShell

È possibile installare e attivare un elemento Feature utilizzando Windows PowerShell o il modello a oggetti. Per attivare un elemento Feature è inoltre possibile utilizzare la pagina Gestisci caratteristiche applicazione Web o la pagina Caratteristiche della raccolta siti o del sito in cui si desidera attivare l'elemento Feature. L'installazione di un elemento Feature consente di rendere noti la relativa definizione e i relativi elementi in un'intera server farm, mentre l'attivazione di un elemento Feature consente di renderlo disponibile in un ambito specifico.

Nota

Gli elementi Feature che vengono distribuiti come parte di un pacchetto della soluzione vengono installati con la distribuzione e non richiedono un'installazione manuale.

Gli elementi Feature vengono installati nella cartella 14\Template\Features, con ogni elemento nella relativa sottocartella. Alla radice della cartella un file Feature.xml definisce il contenuto dell'elemento Feature. Per poter utilizzare singoli elementi Feature è necessario installarli e, a meno che l'elemento Feature non sia nell'ambito della farm, attivarli dopo l'installazione. Se è nell'ambito della farm o dell'applicazione Web, un elemento Feature verrà attivato automaticamente.

Per disinstallare un elemento Feature in modo che la relativa definizione non sia più disponibile in una server farm, è innanzitutto necessario disattivarlo utilizzando il cmdlet Windows PowerShellDisable-SPFeature, a meno che non sia nell'ambito di applicazioni Web o farm. Dopo aver disattivato l'elemento Feature, è possibile utilizzare il cmdlet Uninstall-SPFeature per disinstallarlo. Per ulteriori informazioni, vedere Uninstall-SPFeature. Dopo la disinstallazione di un elemento Feature, reimpostare Internet Information Services (IIS) in modo che le modifiche diventino effettive.

Per disattivare un elemento Feature in modo che diventi inattivo secondo l'ambito originariamente assegnato senza eseguire la disinstallazione, è possibile utilizzare il cmdlet Disable-SPFeature. Per ulteriori informazioni, vedere Disable-SPFeature.

Utilizzare le procedure seguenti per installare e attivare un elemento Feature.

Per installare un elemento Feature tramite Windows PowerShell

  1. Verificare che vengano soddisfatti i requisiti minimi seguenti: vedere Add-SPShellAdmin.

  2. Fare clic sul pulsante Start e scegliere Tutti i programmi.

  3. Fare clic su Prodotti Microsoft SharePoint 2010.

  4. Fare clic su Shell di gestione SharePoint 2010.

  5. Al prompt dei comandi di Windows PowerShell digitare il comando seguente:

    Install-SPFeature -path <Path> [-force]
    

    Dove:

    • <Path> è un percorso di file valido, ad esempio MyFeature. Il percorso dell'elemento Feature deve essere un percorso letterale della cartella 14\Template\Features. Il nome di file Feature.xml è implicito e non deve essere specificato.

Per ulteriori informazioni, vedere Install-SPFeature.

Nota

Per l'esecuzione di attività amministrative dalla riga di comando è consigliabile utilizzare Windows PowerShell. Lo strumento da riga di comando Stsadm è deprecato, ma è stato incluso per garantire la compatibilità con le versioni precedenti del prodotto.

Per attivare un elemento Feature tramite Windows PowerShell

  1. Verificare che vengano soddisfatti i requisiti minimi seguenti: vedere Add-SPShellAdmin.

  2. Fare clic sul pulsante Start e scegliere Tutti i programmi.

  3. Fare clic su Prodotti Microsoft SharePoint 2010.

  4. Fare clic su Shell di gestione SharePoint 2010.

  5. Al prompt dei comandi di Windows PowerShell digitare il comando seguente:

    Enable-SPFeature -Identity <FeatureID> [-url] <URLname> [-force]
    

    Dove:

    • <FeatureID> è il nome della cartella dell'elemento Feature contenuta nella cartella 14\Template\Features. Deve essere un percorso di file valido, ad esempio MyCustom.

    • <URLname> è l'URL padre dell'elemento Feature dell'applicazione Web, della raccolta siti o del sito Web per cui viene attivato l'elemento Feature, ad esempio http://sito.

Per ulteriori informazioni, vedere Enable-SPFeature.

Nota

Per l'esecuzione di attività amministrative dalla riga di comando è consigliabile utilizzare Windows PowerShell. Lo strumento da riga di comando Stsadm è deprecato, ma è stato incluso per garantire la compatibilità con le versioni precedenti del prodotto.