none
SharePoint Workflow 2013 Error with social API RRS feed

  • Вопрос

  • Добрый день, при вызове из декларативного рабочего процесса функции /_api/social.feed/my/feed/post, кидает следующий стек трейс

    <?xml version="1.0" encoding="utf-8"?><m:error xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"><m:code>-2147024891, System.UnauthorizedAccessException</m:code><m:message xml:lang="en-US">Access denied. You do not have permission to perform this action or access this resource.</m:message><m:innererror><m:message>Access Denied: This application does not have the required permissions to access profile information.</m:message><m:type>System.UnauthorizedAccessException</m:type><m:stacktrace>   at Microsoft.Office.Server.UserProfiles.UserProfileManager..ctor(UserProfileApplicationProxy userProfileApplicationProxy, Guid partitionID, Boolean IgnoreUserPrivacy, Boolean isWithinProfileSync, Boolean assumeProfileAdmin)&#xD;
       at Microsoft.Office.Server.UserProfiles.UserProfileManager..ctor(UserProfileApplicationProxy userProfileApplicationProxy, Guid partitionID, Boolean IgnoreUserPrivacy, Boolean isWithinProfileSync)&#xD;
       at Microsoft.Office.Server.UserProfiles.UserProfileManager..ctor(UserProfileApplicationProxy userProfileApplicationProxy, Guid partitionID, Boolean IgnoreUserPrivacy)&#xD;
       at Microsoft.Office.Server.UserProfiles.ProfileLoader.get_UserProfileManager()&#xD;
       at Microsoft.Office.Server.Microfeed.MBUtilities.GetUserProfile(String accountName, SPServiceContext context, MicrofeedLookupUserProfile lookupBy, Boolean&amp; isFullProfile)&#xD;
       at Microsoft.Office.Server.Social.SPSocialFeedManager.&lt;.ctor&gt;b__0()&#xD;
       at Microsoft.Office.Server.Social.SPSocialUtil.InvokeWithExceptionTranslation(ISocialOperationManager target, String name, Action action)&#xD;
       at Microsoft.Office.Server.Social.SPSocialRestFeedManager..ctor()&#xD;
       at Microsoft.Office.Server.Social.SPSocialRestFeedManagerServerStub.InvokeConstructor(ClientValueCollection xmlargs, ProxyContext proxyContext)&#xD;
       at Microsoft.SharePoint.Client.ServerStub.InvokeConstructorWithMonitoredScope(ClientValueCollection args, ProxyContext proxyContext)&#xD;
       at Microsoft.SharePoint.Client.Rest.RestRequestProcessor.GetObjectFromPathRoot(Boolean mainRequestPath, EdmParserNode node, Boolean resourceEndpoint, MethodInformation&amp; methodInfo)&#xD;
       at Microsoft.SharePoint.Client.Rest.RestRequestProcessor.GetObjectFromPath(Boolean mainRequestPath, String path, String pathForErrorMessage)&#xD;
       at Microsoft.SharePoint.Client.Rest.RestRequestProcessor.Process()&#xD;
       at Microsoft.SharePoint.Client.Rest.RestRequestProcessor.ProcessRequest()&#xD;
       at Microsoft.SharePoint.Client.Rest.RestService.ProcessQuery(Stream inputStream, IList`1 pendingDisposableContainer)</m:stacktrace></m:innererror></m:error>
    

    На сколько я понимаю UserProfileManager пытается обратиться к HttpContext.Current и падает с ошибкой, т.к. контекста нет. 

    Вопрос как можно обойти эту проблему и используя REST API написать в фид пользователю?

    1 октября 2013 г. 10:23

Ответы