2010-01-25 9 views
0

J'essaie d'utiliser l'appel de service Web AddWebPartToZone dans Sharepoint 2007 pour ajouter un composant WebPart par programmation à une page WebPart. Nous obtenons une exception de savon (Microsoft.Sharepoint.SoapServer.SoapServerException).Erreur sur AddWebPart (Sharepoint 2007)

Le composant WebPart que j'essaie d'ajouter est la version originale de l'application Chatterbox trouvée sur codeplex. Lorsque j'essaie d'ajouter un éditeur de contenu à la même page, cela fonctionne parfaitement.

Nous pouvons ajouter le composant Webpart manuellement (Chatterbox) à la page WebPart et cela fonctionne correctement. Nous avons vérifié et la partie Web est ajoutée de manière appropriée à la liste des contrôles sécurisés dans le webconfig (comme il se doit). L'étape suivante consiste donc à jeter un coup d'œil rapide dans les journaux. Les messages que nous recevons sont:

Monitorable Usage: Security - Web Services: AddWebPart 

Monitorable Error importing WebPart. Assembly Microsoft.SharePoint.SampleParts.ChatterBox, Version=12.0.0.0, Culture=neutral, PublicKeyToken=48e046c834625a88, TypeName. Microsoft.SharePoint.SampleParts.ChatterBox 

J'ai essayé de modifier la XML webpart que nous utilisons sur l'appel webservice et nous obtenons le même message d'erreur à chaque fois. Maintenant cela ressemble à un problème d'autorisations avec le webpart mais vu que nous l'avons ajouté correctement à la liste safecontrols dans le webconfig je ne vois pas ce que je peux faire d'autre?

Voici le XML webpart que nous avons utilisé:

<?xml version="1.0" encoding="utf-16"?> 
    <WebPart xmlns:xsd="http://schemas.microsoft.com/WebPart/v3" xmlns:xsi="http://microsoft.com/sharepoint/webpartpages" xmlns="http://schemas.microsoft.com/WebPart/v2"> 
     <IsIncluded>true</IsIncluded> 
     <ZoneID>Full Page</ZoneID> 
     <PartOrder>1</PartOrder> 
     <FrameState>Normal</FrameState> 
     <Height /> 
     <Width /> 
     <AllowClose>True</AllowClose> 
     <AllowRemove>true</AllowRemove> 
     <AllowZoneChange>true</AllowZoneChange> 
     <AllowMinimize>false</AllowMinimize> 
     <IsVisible>true</IsVisible> 
     <NumComments>10</NumComments> 
     <UpdateInterval>5</UpdateInterval> 
     <AllowConnect>True</AllowConnect> 
     <ChromeType>Default</ChromeType> 
     <TitleIconImageUrl /> 
     <Description /> 
     <Hidden>False</Hidden> 
     <BackingListName>Potato</BackingListName> 
     <UserName /> 
     <AllowEdit>True</AllowEdit> 
     <DetailLink /> 
     <HelpLink /> 
     <Title>ChatterBox 101</Title> 
     <Dir>Default</Dir> 
     <PartImageSmall /> 
     <MissingAssembly /> 
     <PartImageLarge>/_layouts/images/mscontl.gif</PartImageLarge> 
     <IsIncludedFilter /> 
     <Assembly>ChatterBox, Version=12.0.0.0, Culture=neutral, PublicKeyToken=48e046c834625a88</Assembly> 
     <TypeName>Microsoft.SharePoint.SampleParts.ChatterBox</TypeName> 
     <ChromeState>Normal</ChromeState> 
     <HelpMode>Navigate</HelpMode> 
     </WebPart> 

Nous avons une sharepoint 2007 boîte (MOSS) en cours d'exécution sur Windows 2003. Toute aide serait vraiment apprécié car cela fait lentement mais sûrement ma tête !

grâce,

Kev

Répondre

0

Est-ce que l'utilisateur le webservice est appelé sous (NetworkCredentials) ont l'autorisation d'ajouter le webpart à cette page particulière?

+0

Salut, Oui, je pense qu'ils le font. Nous pouvons ajouter un composant WebPart éditeur de contenu en utilisant la même méthode. Il semble être isolé de cette partie Web particulière (qui a été vérifiée comme un contrôle sécurisé et peut être ajouté manuellement). – Kev