KB: SharePoint Search Service cannot crawl user profile

Error in Application event log:

The start address sps3://nsppweb-sspt91 cannot be crawled.

Context: Application ‘Search_Service_Application’, Catalog ‘Portal_Content’

Access is denied. Verify that either the Default Content Access Account has access to this repository, or add a crawl rule to crawl this repository. If the repository being crawled is a SharePoint repository, verify that the account you are using has “Full Read” permissions on the SharePoint Web Application being crawled. (0x80041205)

The search service account does not have “Retrieve People Data for Search Crawlers” permission in the User Profile Service Application.

See http://www.thesanitypoint.com/archive/2010/05/27/successful-sharepoint-2010-people-search.aspx

KB: Import SharePoint User Profile Pictures from Active Directory “thumbnailPhoto” attribute

Step 1) Add new import mapping for Active Directory thumbnailPhoto attribute to Picture profile property
Step 2) Start full user profile sync
Step 3) Run SharePoint PowerShell command as the User Profile Service Application account (IMPORTANT! otherwise it will end up with “Update-SPProfilePhotoStore : Object reference not set to an instance of an object” error.)

Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation

Will I get a better Silverlight Organization Browser?

SharePoint 2010 has new structure called Organization Profile which answers the need for a real org chart in enterprises – group people by department, division and team hierarchies rather than just the reporting manager. (see http://alberto.casu.it/technology/sharepoint-2010-organization-profiles/)

Everything looks impressive except no out of the box UI in RTM is utilizing this…

The OOTB Silverlight Organization Browser webpart calls https://server/MY/_vti_bin/SilverlightProfileService.json/GetUserSLProfileData to get the user profile data which utilize the Microsoft.Office.Server.UserProfiles.SilverlightProfileService in Microsoft.Sharepoint.Portal.dll

<%@ WebService Language=”c#” Class=”Microsoft.Office.Server.UserProfiles.SilverlightProfileService, Microsoft.Sharepoint.Portal, Version=, Culture=neutral, PublicKeyToken=71e9bce111e9429c” %>

The Microsoft.Office.Server.UserProfiles.SilverlightProfileService.GetUserPLProfileData is fairly simple which takes AccountNames and returns SLProfileData object. The Silverlight webpart will then do subsequent calls to GetUserSLProfileData to get the parent and siblings profile details in the same way.

A high chance that we can write our own SilverlightProfileService to return organization profile also.

And interesting enough, the GetOrganizationSLProfileData is actually there! Looks like the developers are too busy to finish it before shipping the RTM.