Microsoft Office Sharepoint

All my posts are provided "AS IS" with no warranties, and confer no rights.

Cannot Update A List Item

I started the other day to create a simple workflow which should create an item in a tasks list and assign the task to a sharepoint group containing local accounts.


The set-up was (so I thought) the simplest possible: One standalone server on a single server, no domain, no nothing.


Sharepoint Approvers group contained 2 local users (COMPUTERNAME\User1,COMPUTERNAME\User2).Each user had the e-mail address manually set.


Now for the fun part: try to run the workflow, by creating a new document in th elist where the workflow was attached.


Workflow ended in error : “Could not update a list item”


I thought my startup account was to blame ( being Sharepoint\System – see A declarative workflow does not start automatically after you install Windows SharePoint Services 3.0 Service Pack 1 ) so I tried logging on with a different account but the workflow failed repeatedly, regardless of the user account I was attempting to run it with.I tried to start the workflow manually but the error message repeated “Could not update a list item”


I was about to re-create my whole environment to re-try this simple task when I was struck by the light:


I should check the ULS Logs first !


(usually located under %SYSTEMDRIVE%\Program Files\Common Files\Microsoft Shared\Web server extensions\12\Logs)


There it was:


Error in resolving user ‘USER1’ : System.ComponentModel.Win32Exception: Unable to contact the global catalog server     at Microsoft.SharePoint.Utilities.SPActiveDirectoryDomain.GetDirectorySearcher()     at Microsoft.SharePoint.WebControls.PeopleEditor.SearchFromGC(SPActiveDirectoryDomain domain, String strFilter, String[] rgstrProp, Int32 nTimeout, Int32 nSizeLimit, SPUserCollection spUsers, ArrayList& rgResults)     at Microsoft.SharePoint.Utilities.SPUserUtility.ResolveAgainstAD(String input, Boolean inputIsEmailOnly, SPActiveDirectoryDomain globalCatalog, SPPrincipalType scopes, SPUserCollection usersContainer, TimeSpan searchTimeout)     at Microsoft.SharePoint.Utilities.SPActiveDirectoryPrincipalResolver.ResolvePrincipal(String input, Boolean inputIsEmailOnly, SPPrincipalType scopes, SPPrincipalSource sources, SPUserCollection usersContainer)     at Microsoft.SharePoint.Utilities.SPUtility.ResolveWindowsPrincipal(SPWebApplication webApp, String input, SPPrincipalType scopes, Boolean inputIsEmailOnly).

Doing a bit of soulsearching (and some logical thinking) I understood what the error meant :


MY SERVER WAS NOT PART OF A DOMAIN. 


In the attempt to validate the user accounts (and their e-mail addresses) required to take over the tasks, my workflow was allways attempting the check the Domain controller for my WORKGROUP domain , DC that could not be found, hence the error.


Ended up by reinstalling the server on a test domain and without any big surprise the workflow started and ended successfully.