Bonjour,
Je dois envoyer des enveloppes en SOAP à un webservice sharepoint afin de uploader un fichier sur le sharepoint, mais je ne souhaite pas utiliser de code en C#
J'utilise le webservice copy (_vti_bin/copy.aspx)
J’envoie l'enveloppe avec un header SOAPAction http://schemas.microsoft.com/sharepo.../CopyIntoItems
Voici l'enveloppe type que j'envoie :
Donc dans la source j'ai mis le nom du fichier,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <?xml version="1.0" encoding="utf-8"?><soap12: Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"><soap12:Body> <CopyIntoItems xmlns="http://schemas.microsoft.com/sharepoint/soap/"> <SourceUrl>test.txt</SourceUrl> <DestinationUrls><string>[URLsite]/Files/test.txt</string></DestinationUrls> <Stream>le stream du fichier en base 64</Stream> </CopyIntoItems></soap12:Body></soap12:Envelope>
pour la destination l'endroit où le fichier doit être uploadé avec le nom du fichier (j'ai aussi testé sans le nom du fichier)
et pour le stream du fichier il est encodé en base 64 le fichier de test :
car cela ne fonctionne pas, ça me donne cet erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part dGVzdHR0dHR0dHR0dA==
j'ai aussi testé avec DestinationUrl="[URLsite]/Files" j'ai la même erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body> <CopyIntoItemsResponse xmlns="http://schemas.microsoft.com/sharepoint/soap/"><CopyIntoItemsResult>0</CopyIntoItemsResult><Results> <CopyResult ErrorCode="Unknown" ErrorMessage="Object reference not set to an instance of an object." DestinationUrl="[URLsite]/Files/test.txt" /></Results> </CopyIntoItemsResponse></soap:Body></soap:Envelope>
Si vous voyez ce qui peut bloquer ça serait parfait.
Je ne comprend pas trop l'utilisation des FieldInformation, que l'on peut utiliser dans l'enveloppe et qui doit surement servir à définir des propriétés pour l'enregistrement du fichier. Un petit exemple pourrait grandement m'aider.
Au passage si vous avez un exemple pour activer le circuit d'approbation de Sharepoint avec le webservice Workflow.asmx je suis preneur.
Merci beaucoup.
Partager