I’ve had the fun task of shoe-horning some 2010 PSI projects into Project Server 2013 recently, and the good news is that as promised the PSI is still there just as we remember it!
One particular exception I kept seeing in my code immediately when using SharePoint Permissions Mode (ie a Default install) was the following:
Exception: Unhandled Communication Fault occurred
Which came with the unusually helpful accompanying ULS log errors;
06/11/2013 10:05:54.39 w3wp.exe 0x161C) 0x29B0 Project Server General ab3be Monitorable Unhandled exception in the process of routing the request to the app server: Target=https://host/PWA/_vti_bin/PSI/ProjectServer.svc, exception=[InvalidOperationException] Operation is not valid due to the current state of the object., StackTrace= at Microsoft.Office.Project.Server.WcfTrustedFacadeHelperMethods.
TryGetImpersonationContextInfo(String originalTargetUrl, OperationContext context, ImpersonationHeader& impersonationHeader) …
06/11/2013 10:05:54.39 w3wp.exe (0x161C) 0x29B0 Project Server Security aibp8 High Impersonation is not supported in SharePoint permission mode
The second log is the giveaway, I won’t be forgetting that limitation again!
Hi. I’d installed Project Server 2013 on SharePoint Server 2013 and in event viewer there are LOT of 8118 messages, that occurs each ~20 seconds. In message there is one sentence: “Connectivity exception [InvalidOperationException] Operation is not valid due to the current state of the object. when forwarding request to app server http://sp2013server/PWA/_vti_bin/PSI/Security.asmx”
in appropriate sharepoint log there is such message:
“Impersonation is not supported in SharePoint permission mode”,
and next one “Unhandled exception in the process of routing the request to the app server: Target=http://sp2013server/PWA/_vti_bin/PSI/Security.asmx, exception=[InvalidOperationException] Operation is not valid due to the current state of the object., StackTrace= at Microsoft.Office.Project.Server.WcfTrustedFacadeHelperMethods.TryGetImpersonationContextInfo(String originalTargetUrl, OperationContext context, ImpersonationHeader& impersonationHeader) at Microsoft.Office.Project.PWA.WCFContext.GetContext(MessageHeaders messageHeadersCollection, ServiceSecurityContext serviceSecurityContext, Uri originalTargetUri) at Microsoft.Office.Project.Server.WcfPsiRequestRouterImplementation.ProcessMessage(Message message)”
Have You any idea about this error?
As in the article above in my case that exact error message occurs because of my code attempting to use the 2010 impersonation methods.
If your seeing it in your server then my guess is that you have either upgraded from 2010 or have installed some custom solutions which use that option.
If you need it them I suggest changing to Project Permissions Mode to re-enable the support for those features.
Do you have a solution to calling the 2013 PSI WCF methods when the Project Server environment is in SharePoint Permission mode?
Yes, the PSI WCF methods work in SharePoint permissions mode without any additional work, only you cannot use impersonation (as per the error in this post) so as long as that is okay you shouldn’t need to change much.