Workflow ERROR on Save

Vote:
 

Im using EPiServer 6 R2 and Im trying to set up a Workflow on a Clients Server. I am assigned as an Adminsitrator but each time I click on Save I get the following error:

 

Error occured 4/12/2013 9:05:56 AM User IP 195.171.2.28 User Agent Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31 Url *********/CMS/admin/WorkflowDefinitionEdit.aspx?definitionId=3854e494-4f58-4eac-ab10-4c3b0b13a85f Referer /*********/CMS/admin/WorkflowDefinitionEdit.aspx?definitionId=3854e494-4f58-4eac-ab10-4c3b0b13a85f To serialize an object the object has to have a schema (or inherits from IDictionary or IList) for type:System.Collections.Generic.List`1[[EPiServer.WorkflowFoundation.Workflows.ApproverItem, EPiServer.WorkflowFoundation, Version=6.1.379.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 for base type:EPiServer.WorkflowFoundation.CompiledWorkflowDefinition, EPiServer.WorkflowFoundation, Version=6.1.379.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: EPiServer.Implementation.Serialization.ElektroPostSerializationException: To serialize an object the object has to have a schema (or inherits from IDictionary or IList) for type:System.Collections.Generic.List`1[[EPiServer.WorkflowFoundation.Workflows.ApproverItem, EPiServer.WorkflowFoundation, Version=6.1.379.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 for base type:EPiServer.WorkflowFoundation.CompiledWorkflowDefinition, EPiServer.WorkflowFoundation, Version=6.1.379.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[ElektroPostSerializationException: To serialize an object the object has to have a schema (or inherits from IDictionary or IList) for type:System.Collections.Generic.List`1[[EPiServer.WorkflowFoundation.Workflows.ApproverItem, EPiServer.WorkflowFoundation, Version=6.1.379.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 for base type:EPiServer.WorkflowFoundation.CompiledWorkflowDefinition, EPiServer.WorkflowFoundation, Version=6.1.379.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7]    EPiServer.Implementation.Serialization.ObjectWriter.WriteGenericTypeArguments(Object graph) +517    EPiServer.Implementation.Serialization.ObjectWriter.WriteObjectToStream(Object graph) +546    EPiServer.Implementation.Serialization.ObjectWriter.WriteArrayToStream(Type elementType, Array array) +286    EPiServer.Implementation.Serialization.ObjectWriter.WriteObjectToStream(Object graph) +999    EPiServer.Implementation.Serialization.ObjectWriter.WriteObjectToStream(Object graph) +1012    EPiServer.Implementation.Serialization.ObjectWriter.WriteToStream(Object graph) +68    EPiServer.Implementation.SqlObjectStore.Save(IItem item, Byte[]& serializedData) +533

[ObjectStoreException: Save failed]    EPiServer.Implementation.SqlObjectStore.Save(IItem item, Byte[]& serializedData) +1370    EPiServer.Implementation.CacheObjectStore.Save(IItem item) +48    EPiServer.WorkflowFoundation.StorageProviders.ObjectStoreStorageProvider.AddItem(T item, String path) +464    EPiServer.WorkflowFoundation.DefinitionHandler.UpdateWorkflowDefinition(WorkflowDefinition definition) +233    EPiServer.WorkflowFoundation.DefinitionHandler.SaveDefinition(CompiledWorkflowDefinition definition) +383    EPiServer.WorkflowFoundation.DefinitionHandler.SaveDefinition(WorkflowDefinition definition) +59    EPiServer.WorkflowFoundation.UI.WorkflowDefinitionEdit.Save_Click(Object sender, EventArgs e) +1611    EPiServer.UI.WebControls.ToolButton.RaisePostBackEvent(String eventArgument) +254    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3691

 

 

Can anyone suggest any steps I must take to fix this issue?

 

Thanks

#70132
Apr 12, 2013 11:22
Vote:
 

Workflow definitions are stored in ObjectStore which require types to be registered before saved. The registration of types for the builtin workflows are done in services. So make sure you have the externalservices registration in your episerver.config:

<workflowSettings>

....Here goes defintions

<externalServices>
<!-- externalService: Custom services that is to be registered with workflow runtime-->
<externalService type="EPiServer.WorkflowFoundation.Workflows.ApprovalService,EPiServer.WorkflowFoundation" />
<externalService type="EPiServer.WorkflowFoundation.Workflows.ReadyForTranslationService,EPiServer.WorkflowFoundation" />
<externalService type="EPiServer.WorkflowFoundation.Workflows.RequestForFeedbackService,EPiServer.WorkflowFoundation" />
</externalServices>

</workflowSettings>

#70142
Apr 12, 2013 13:53
Vote:
 

Hi, Sorry for the late reply - this is exactly what we needed - many thanks

#70164
Edited, Apr 12, 2013 14:43
This thread is locked and should be used for reference only. Please use the Episerver CMS 7 and earlier versions forum to open new discussions.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.