This morning I came across the following error while trying to publish a Nintex 2010 workflow which contains a ‘Task Reminder’ workflow action.
Background:
I have a SharePoint 2010 MOSS environment. I create a new Nintex 2010 Workflow which I can save and publish without problems.
Then I add a ‘Task Reminder’ action
And when I publish the workflow I get the following error:
Cause:
For a type to be used within the workflow, it must be registered as an Authorized Type in the web.config file. All of the Nintex workflow actions and custom types are registered as authorized types.
Some of the workflow actions have a property of a type that inherits from a generic list, that is List<T>. List<T> is a basic system type provided in .NET.
With SharePoint 2010, List<T> is no longer authorized. Workflow actions that use a type that inherits from List<T> no longer run or publish.
The SharePoint web service to validate workflows returns the following error when publishing:
<Error><CompilerError Line="0" Column="0" Text="Type System.Collections.Generic.List`1, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 is not marked as authorized in the application configuration file." /></Error>
Work around:Add the following to the web.config of the SharePoint web application on which you want to publish the workflow.
<authorizedType Assembly="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" Namespace="System.Collections.Generic" TypeName="List`1" Authorized="True" />
Save the web.config and return to SharePoint and now you will be able to successfully publish the same workflow (containing the Task Reminder):
Enjoy !