Hi I've got a hightrust application on sharepoint 2016. On development the submitfile worked although the website and the sharepoint site were both on the same server.
Moving to staging and the sharepoint site is on one site and the IIS website on another.
When I call submitfile I get the reply <ResultCode>NotFound</ResultCode>
I've checked and the appPool which the soap request is running as does have access as well as being in the "Records Center Web Service Submitters"
group.
I've tested using soapui the 'GetServerInfo
' and it does seem to have access as it gets results back.
There are a few errors floating around the ULS logs
EntityTypes calculated. Web: 'ff2dee5d-b283-4413-b16a-2c4e27a53acf', WebApp: 'null', EntityTypeCount: '5'.
EntityTypes calculated. Web: 'ff2dee5d-b283-4413-b16a-2c4e27a53acf', WebApp: 'null', EntityTypeCount: '1'.
SPSecurityTokenServiceManager!EnsureSharePointLogonRequestClaims: InputIdentity doesn't conatin a PrimarySid claim.
SPLoggingLock held lock for 469 milliseconds. Call stack:
at Microsoft.SharePoint.Utilities.SPLoggingLockTag.Dispose()
at Microsoft.SharePoint.Administration.SPPersistedObjectCollectionCache.InvalidateCache
SPMicrofeedContext.SetMySiteHostForContext failed System.UriFormatException: Invalid URI: The URI is empty.
But in all honesty I'm not too sure they have anything todo with it.
Any ideas?
Additional Info I'm using the sharepoint soap request library ie.
var listsProxy = new CESARecordSubmit.RecordsRepositorySoapClient();
listsProxy.ClientCredentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials;
listsProxy.Endpoint.Address = endpoint;
listsProxy.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;
Part with properties etc.
var result = listsProxy.SubmitFile(bytesArray, records.ToArray(), "xxxxx", _spAppPool.Site.RootWeb.Url + file.ServerRelativeUrl, _sp.LoginName);
The appPool user of the IIS site is in the "Records Center Web Service Submitters" group.
endpoint
is reachable from the IIS machine?