Unable to create new site collections after deploying the People Picker with SharePoint 2013
I was wondering if anyone else had problems creating new site collections via PowerShell after deploying the People Picker? We are working with it in our test environment and get the following error in PowerShell:
New-SPSite : Object reference not set to an instance of an object. At line:1 char:1 + New-SPSite -Url http://share.guardiandev.com -HostHeaderWebApplication http://d ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidData: (Microsoft.Share...SPCmdletNewSite:SPCmdletNewSite) [New-SPSite], NullReferenc eException + FullyQualifiedErrorId : Microsoft.SharePoint.PowerShell.SPCmdletNewSite
and then the following are in our SharePoint logs:
Error in FillResolve when searching for users. Exception Object reference not set to an instance of an object., Stack at OktaClaimsProvider.OktaWebServiceClient.get_CurrentWebApp() at OktaClaimsProvider.OktaWebServiceClient.GetWebApplicationConfiguration() at OktaClaimsProvider.OktaWebServiceClient.GetUsers(String searchPattern) at OktaClaimsProvider.OktaClaimsProvider.FillResolve(Uri context, String entityTypes, String resolveInput, List`1 resolved)
System.NullReferenceException: Object reference not set to an instance of an object. at OktaClaimsProvider.OktaClaimsProvider.FillResolve(Uri context, String entityTypes, String resolveInput, List`1 resolved) at Microsoft.SharePoint.Administration.Claims.SPClaimProvider.Resolve(Uri context, String entityTypes, String resolveInput) at Microsoft.SharePoint.Administration.Claims.SPClaimProviderOperations.Resolve(Uri context, SPClaimProviderOperationOptions mode, String providerNames, String entityTypes, String resolveInput) at Microsoft.SharePoint.Utilities.SPUtility.ResolvePrincipalClaims(SPWeb web, SPWebApplication webApplication, Nullable`1 urlZone, String input, SPPrincipalType scopes, SPPrincipalSource sources, SPPrincipalInfo user, Boolean inputIsEmailOnly) at Microsoft.SharePoint.Utilities.SPUtility.ResolvePrincipalInternal(SPWeb web, SPWebApplication webApp, Nullable`1 urlZone, String input, SPPrincipalType scopes, SPPrincipalSource sources, SPUserCollection usersContainer, Boolean inputIsEmailOnly, Boolean alwaysAddWindowsResolver) at Microsoft.SharePoint.Utilities.SPUtility.ResolvePrincipal(SPWebApplication webApp, Nullable`1 urlZone, String input, SPPrincipalType scopes, SPPrincipalSource sources, Boolean inputIsEmailOnly) at Microsoft.SharePoint.Administration.SPSiteCollection.Add(SPContentDatabase database, SPSiteSubscription siteSubscription, String siteUrl, String title, String description, UInt32 nLCID, Int32 compatibilityLevel, String webTemplate, String ownerLogin, String ownerName, String ownerEmail, String secondaryContactLogin, String secondaryContactName, String secondaryContactEmail, String quotaTemplate, String sscRootWebUrl, Boolean useHostHeaderAsSiteName, Boolean overrideCompatibilityRestriction) at Microsoft.SharePoint.PowerShell.SPCmdletNewSite.CreateDataObject() at Microsoft.SharePoint.PowerShell.SPNewCmdletBase`1.InternalProcessRecord() at Microsoft.SharePoint.PowerShell.SPCmdlet.ProcessRecord()
the method OktaClaimsProvider.OktaWebServiceClient.get_CurrentWebApp() return the SPContext.Current.Site.WebApplication; however, when in powershell you don’t have current SPContext because we are in powershell, and you need to create a new instance of the SPContext
We can re-create this. I was wondering if anyone else has seen this and if so, what did you do to correct?
I am not convinced that the Peoplepicker deployed successfully in your case .... can you validate that the package deployed successfully please as follows?
FYI you may need IISreset or a clean uninstall/ reinstall of the PP agent then revalidate
The status output reads “Deployed” after the solution has been deployed to the farm.
If the status output continues to read “Not deployed” after a few minutes, then sign into the SharePoint Central Administration console, select System Settings > Manage Farm Solutions, and check for error messages. If necessary, cancel the deployment and restart it using the Central Administration Management Console.
Check the status of the PP agent in the Console (not just in Powershell)- see below
Are you still running into this issue? We had the same issue and just recently got this resolved with okta support. When you run the powershell command you need to rerfence the site owner as an okta user via the claims name. Depending on which varibales you're using it will vary slightly. Let me know if you have questions I'd be happy to send some refernces docs your way.