Cercando di effettuare il deploy di una soluzione SharePoint 2007 tramite l'utility STSADM, sono incappato in questo errore:
Failed to extract the cab file in the solution
Tale errore, il più delle volte, è dato dalla presenza di righe identiche o all'interno dei file feature.xml o all'interno del file DDF che deve essere scritto per poi andare a creare la soluzione .wsp vera e propria. Questo può accadere spesso quando si procede con la creazione della soluzione in maniera manuale.
Se però utilizziamo dei tool per la generazione automatica del file .wsp, come potrebbero essere le estensioni per WSS di Visual Studio 2008 (VEsWSS 1.1, 1.2, 1.3), o WSPBuilder o gli Smart Templates, dobbiamo presumere che la creazione del file DDF venga effettuata correttamente e che, quindi, l'errore in questione sia generato da qualcos'altro.
In questo caso, le principali cause per cui viene generato questo errore sono:
- La presenza di caratteri speciali (come per esempio ^ o la tilde) all'interno dei nomi del file feature.xml, del file manifest.xml o dei file XML secondari alle proprie features.
- La presenza di file copiati due volte da altri già presenti, dove è stato mantenuto il nome "Copia (2) di..." o "Copy (2) of..." (nella versione inglese). Questi perchè contengono le tonde che evidentemente per l'utility STSADM non vanno bene.
Il mio caso era il secondo.. Avevo mantenuto in una cartella di immagini due copie delle stessa immagine e non c'era verso di completare correttamente il deploy della mia soluzione.
Una volta tolti quei file, è tornato tutto alla normalità.
Spero possa essere d'aiuto a qualcuno.