none
Come posso installare una nuova web part in Sharepoint 2010 Foundation?

    Question

  • La situazione è questa: ho un sito in wss 3.0 che si appoggia su un database di sharepoint e su un database di supporto e devo migrarlo su un'altra macchina a Sharepoint 2010.

    Dopo aver eseguito backup dei due database e restore degli stessi nella nuova macchina ho creato la Web Application di destinazione e lanciando dalla shell il comando Test-SPContentDatabase ottengo 3 errori della categoria MissingWebPart. Allora dalla central administration del mio wss 3>site action>site setting>galleries>web parts vedo nella lista una XXX.webpart (oltre ad altre) ed essendo XXX proprio il nome del sito che devo migrare deduco sia la mia web part mancante.

    Come posso però esportare dal wss 3 ed importare nello Sharepoint 2010 foundation questa webpart? Non trovo nessun tasto tipo salva/esporta.

    Altra domanda: considerato che gli errori di missingwebpart sono 3 immagino che le webpart mancanti siano più di una, come posso sapere quali sono?

    Grazie per l'aiuto.

     

    Aggiornamento: ho trovato in wss3 delle solution, potrebbe essere che questa solution vada installata in sharepoint 2010? Ad ogni modo ho fatto export ottenendo il file .wsp e tramite il comando stsadm.exe -o addsolution -filename xyz ho provato ad aggiungerla a sharepoint 2010 ma ottengo questo: "Failed to extract the cab file in the solution."

    Thursday, March 3, 2011 12:56 PM

Answers

All replies

  • Ciao !
    Per prima cosa, assicurati di aver seguito correttamente tutti i passi citati nella documentazione per quanto riguarda il metodo di migrazione di tipo "database attach".
    Qui trovi tutto quello che vuoi:
    http://technet.microsoft.com/en-us/library/cc303311.aspx

    Poi, se vuoi capire bene qual'è la web part che manca puoi utilizzare questo tool: http://sp2010extmigrareport.codeplex.com/

    Cmq, non appena capisci qual'è la web part mancante, per portarla devi avere i sorgenti e ricompilarli con Visual Studio 2010. Se questi sono stati sviluppati utilizzanto i tool di sviluppo per SharePoint e per Visual Studio 2008, allora hai la possibilità di migrarli in automatico seguendo questo tutorial:
    http://msdn.microsoft.com/en-us/library/ee662217(office.14).aspx


    Giuseppe Marchi - SharePoint MVP
    www.peppedotnet.it
    www.dev4side.com
    www.sharepointcommunity.it
    Twitter: @PeppeDotNet
    Thursday, March 3, 2011 2:47 PM
    Moderator
  • Quindi senza i sorgenti non posso andare avanti?

    Inoltre scusa l'ignoranza, ma con il comando test il report generato dove viene messo? Perchè non trovo nulla di simile a quello d'esempio del tuo link.

    Thursday, March 3, 2011 2:52 PM
  • Con i sorgenti sei sicuro al 100% di riuscire a portare la tua web part. Senza, puoi provare ad inserire manualmente la dll e i vari file di supporto alla web part all'interno della tua farm SharePoint 2010, ma non è assolutamente detto che questo funzioni (cmq è una cosa NON supportata).

    Invece, per utilizzare quel tool devi generare un file .txt dal comando Test-SPContentDatabase così da darlo poi in pasto a quel tool.
    Questa la sintassi:

    Test-SPContentDatabase -Name <database name> -WebApplication <URL> >> c:\report.txt

    Poi, sempre in riferimento a quel tool, puoi vedere le operazioni che devi eseguire all'interno di questo grafico:
    http://dev4side.com/media/6718/migration2007howto.png 

    A presto
    Peppe


    Giuseppe Marchi - SharePoint MVP
    www.peppedotnet.it
    www.dev4side.com
    www.sharepointcommunity.it
    Twitter: @PeppeDotNet
    Thursday, March 3, 2011 4:52 PM
    Moderator
  • Sono riuscito ad ottenere il report.txt, ma purtroppo non riesco ad utilizzare il tool perché i privilegi che mi sono stati dati sulla macchina in cui lavoro non mi consentono di eseguire file .exe.

    C'è altro modo per identificare le web part mancanti?

    In caso contrario devo farmi dare i sorgenti di tutte le web part della mia prima farm, compilarle tutte con Visual Studio 2010 ed installarle tutte nella farm di destinazione?

    Se invece volessi fare quel tentativo con le .dll e gli altri file, cosa dovrei fare?

     

    Grazie.

    Thursday, March 3, 2011 6:54 PM
  • Ti ripeto che con i sorgenti è tutto più facile.
    Per capire quali sono le web part mancanti puoi provare anche in questo modo:

    1. apri la web part gallery del sito vecchio
    2. seleziona le web part che non sono presenti in un assembly targato microsoft (tutte quelle cioè in cui non vedi la parola "micorsoft" nel nome dell'assembly)
    3. ad una ad una, manualmente, cerca di generare l'id tramite questo tool: http://easywebparttypeidgen.codeplex.com/

    In questo modo riesci a capire quali web part ti mancano, perchè l'id generato da quel tool corrisponde agli id che trovi nel report dato dal comando Test-SPContentDatabase.

    Se vuoi provare invece con la procedura "manuale", dovresi aprire i tuoi .wsp con win rar e recuperarne i relativi file. Quindi prendi la dll e mettila in GAC. Poi, apri il file manifest.xml all'interno del quale dovresti trovare un elemento di tipo "SafeControl". Copialo e incollalo nella relativa sezione all'interno del file web.config della tua nuova web application SharePoint 2010.
    Poi, copia la cartella corrispondente la tua feature sotto il percorso {SharePointRoot}\TEMPLATE\FEATUES e gli eventuali altri files presenti nel .wsp sotto le rispettive locazioni (per vedere queste locazioni, fai sempre riferimento al file manifest.xml).
    Fatto questo, puoi provare a vedere se le web part vengono eseguite nelle tue pagine migrate a SharePoint 2010.


    Giuseppe Marchi - SharePoint MVP
    www.peppedotnet.it
    www.dev4side.com
    www.sharepointcommunity.it
    Twitter: @PeppeDotNet
    Friday, March 4, 2011 10:29 AM
    Moderator
  • Il problema è che io sto lavorando su siti che hanno fatto altre persone, quindi non è detto che io riesca a trovare i sorgenti a meno che non vengano salvati da qualche parte!

    Comunque mi è tutto chiaro tranne che cosa sia GAC. Inoltre nella Web Part Gallery tutte le web part contengono Microsoft nell'assembly name ed hanno tutte estensione .dwp, mentre solamente una non contiene Microsoft, ma all'interno dell'xml non c'è neanche "Assembly Name" e questa web part ha estensione .webpart. 

    E' normale che la web part che dovrebbe mancare sia solamente una quando invece gli errori di missing web part erano tre?

     

     

    • Edited by Matte87 Friday, March 4, 2011 7:16 PM Dettagli aggiuntivi
    Friday, March 4, 2011 12:03 PM
  • Ho utilizzato il tool che mi hai linkato ed ho provato con tutti gli assembly name e type name di tutte le web part, ma nessun ID corrisponde a quelli che mi vengono riportati dal comando Test-SPContentDatabase.

    Come mi devo comportare?

    Monday, March 7, 2011 10:23 AM
  • Mi sembra strano.. ma su che macchina hai provato ? Su quella dove era installato SharePoint 2007 o sulla nuova con SharePoint 2010 ?
    Giuseppe Marchi - SharePoint MVP
    www.peppedotnet.it
    www.dev4side.com
    www.sharepointcommunity.it
    Twitter: @PeppeDotNet
    Monday, March 7, 2011 3:13 PM
    Moderator
  • Io ho scaricato il tool che mi hai linkato (http://easywebparttypeidgen.codeplex.com/), dopodiché ho copiato dalla macchina con wss 3.0 gli assembly e type name di tutte le web part che ho trovato qua site action>site setting>galleries>web parts. Assembly e type li ho trovati cliccando su Edit e poi ViewXML. 

    Potrei aver sbagliato su una web part che nell'xml non aveva l'assembly diviso dal type, eventualmente posso postarti il contenuto dell'xml che tanto è cortissimo.

    Grazie

    Monday, March 7, 2011 9:57 PM
  • Ok, allora dovresti farti dare i permessi per eseguire il primo tool di diagnostica che ti ho consigliato così da poter recuperare le web part mancanti e provare manualmente a reinstallarle sulla nuova macchina SharePoint 2010.
    Cmq, ti ripeto che se trovi i sorgenti e riesci a ricompiarli è molto meglio.
    Giuseppe Marchi - SharePoint MVP
    www.peppedotnet.it
    www.dev4side.com
    www.sharepointcommunity.it
    Twitter: @PeppeDotNet
    Tuesday, March 8, 2011 10:57 AM
    Moderator
  • Mi sono attivato per farmi dare il sorgente, lo faccio ricompilare con Visual Studio 2010 e poi mi basta importare il file nelle web part? Oppure devo utilizzare l'addsolution?
    Tuesday, March 8, 2011 12:00 PM
  • Una volta che hai migrato il codice in una soluzione Visual Studio 2010, devi compilarla e poi devi effettuare il deploy del file .wsp che viene generato.
    Il deploy lo puoi fare tramite Powershell utilizzando i comandi Install-SPSolution e Add-SPSolution.

    Install-SPSolution –Identity PERCORSOTUOFILE.wsp –WebApplication http://TUOSERVERSHAREPOINT -GACDeployment
    Add-SPSolution PERCORSOTUOFILE.wsp


    Giuseppe Marchi - SharePoint MVP
    www.peppedotnet.it
    www.dev4side.com
    www.sharepointcommunity.it
    Twitter: @PeppeDotNet
    Tuesday, March 8, 2011 12:46 PM
    Moderator
  • Una volta che hai migrato il codice in una soluzione Visual Studio 2010, devi compilarla e poi devi effettuare il deploy del file .wsp che viene generato.
    Il deploy lo puoi fare tramite Powershell utilizzando i comandi Install-SPSolution e Add-SPSolution.

    Install-SPSolution –Identity PERCORSOTUOFILE.wsp –WebApplication http://TUOSERVERSHAREPOINT -GACDeployment
    Add-SPSolution PERCORSOTUOFILE.wsp


    Giuseppe Marchi - SharePoint MVP
    www.peppedotnet.it
    www.dev4side.com
    www.sharepointcommunity.it
    Twitter: @PeppeDotNet

    Mi sono fatto dare la nuova web part ricompilata con VS2010, sembra essere stata installata correttamente, però quando tento di aggiungerla ad una pagina questo è quello ottengo:

    http://img717.imageshack.us/i/schermata20110419a15005.jpg/

    Da cosa dipende? Grazie

    Wednesday, April 20, 2011 3:37 PM
  • Wednesday, April 20, 2011 4:00 PM
    Moderator