Accéder au contenu principal

SharePoint : Intégration de Web Services additionnels

 Basiquement SharePoint expose une grande partie de ses fonctionnalités via des Web Services standards que l’on retrouve sur la MSDN :

Mais dans le cadre d’un développement fait autour de cette plateforme SharePoint, il peut arriver que l’on ait à ajouter à ces Web Services SharePoint un Web Service additionnel (comme dans cet exemple de Janne Mattila).

Lors de ce développement, il faut bien sur respecter les règles de base pour les Web Services en validant un ensemble de points qui sont tous listés :

Mais dans un cas précis ou ce Web Service doit être accessible pour toutes les Web Applications, nous devons placer les composants de ce Web Service comme suit :

  • Fichiers DLL stockés dans le GAC
  • Fichiers ASMX stockés dans le répertoire techniques de Web Services de SharePoint :
    • C:\Program Files\Common Files\microsoft shared\Web Server Extensions\12\ISAPI\
    • Répertoire qui correspond a l’URL : http://xxxxxx/_vti_bin/

Dans ce cas, si on conserve la déclaration standard de la classe dans le fichier ASMX, on se retrouve avec le message d’erreur suivant :

Could not create type ‘xxxx.xxxx.xxx’.

Cela ne provient pas du code (si les règles plus haut sont respectées) mais bien du mapping entre notre fichier ASMX et de la DLL du GAC. Il faut donc modifier ce fichier ASMX pour ajouter la référence à cette ASSEMBLY.

La solution est donc de modifier le fichier comme suit :

<%@ WebService Class="Nom.Fort.DLL.Class" %>
<%@ Assembly Name="Nom.Fort.DLL., Version=1.0.0.0, Culture=neutral, PublicKeyToken=7686e15692492ea2" %>

Une fois ce fichier modifié, il faut effectuer un petit IISRESET et vous aurez la chance de retrouver les différentes méthodes de votre Web Services.

Je remercie Laurent Kempé de Tech Head Brothers pour son aide sur cette modification.

Romelard Fabrice [MVP]

Commentaires

Posts les plus consultés de ce blog

Série de Videos sur Home Assistant intégrant la production Photovoltaïque

 Un certain nombre de vidéos sont en ligne pour intégrer sa production photovoltaïque dans Home Assistant en partant de la base. Installation de Home Assistant: On peut ensuite intégrer les composant des Micro-Onduleurs Enphase, mais aussi les batteries Enphase: Ou encore le composant de contrôle Ecojoko: Ce qui permet alors de faire des comparaisons entre les valeurs capturées: Des videos seront encore publiés dans les prochaines semaines sur différents aspects de cette solution. Fab

Nouveau Scripts PowerShell publiés pour gérer les Storage Accounts dans Azure Cloud

Deux scripts sont en lignes pour nettoyer des Storage Account dans Azure Cloud: Supprimer les Blobs d'un container existant https://techcommunity.microsoft.com/discussions/azure/powershell-script-to-remove-all-blobs-from-storage-account/4357815 ------------------------------------------------------- [string]$myConnectionString = "DefaultEndpointsProtocol=https;AccountName=YourStorageAccountName;AccountKey=YourKeyFromStorageAccountConnectionString;EndpointSuffix=core.windows.net" [string]$ContainerName = "YourBlobContainerName" [int]$blobCountAfter = 0 [int]$blobCountBefore = 0 $context = New-AzStorageContext -ConnectionString $myConnectionString $blobCountBefore = (Get-AzStorageBlob -Container $ContainerName -Context $context).Count Write-Host "Total number of blobs in the container Before deletion: $blobCount" -ForegroundColor Yellow Get-AzStorageBlob -Container $ContainerName -Context $context | ForEach-Object {     $_ | Remove-AzureStorageBlob   # o...

Série de vidéos sur le montage d'une serre horticole ACD

 Episode 1: Préparation du terrain Episode 2: Montage de la serre en elle même Episode 3: Finalisation avec le montage électrique alimentant la serre Bon visionnage Fab