Views: 4607
Number of votes: 0
Average rating:

Workflow image generation failure

In EPiServer it is possible to view images of workflows. These images are generated on the server side by using the workflow designer (same designer as you see in Visual Studio).

On Windows7 or Windows 2008 R2 there might be an exception thrown during the image generation. The reason for this is that there is a bug (see Workflow Theme exception) in .NET that the class System.Workflow.ComponentModel.Design.WorkflowTheme has a static constructor that retrieves the location of the theme files from the registry but it doesn't catch the exception if there is an exception accessing the registry. In IIS7.5 the default account for an application pool is ApplicationPoolIdentity (compared to NetworkService which was the default account on IIS7) which does not have access to the registry.

Workarounds

Below are two workaround alternatives:

  • Change the application to run under another account, e.g. NetworkService.
  • Add permission for IIS APPPOOL\DefaultAppPool on registry key Computer\HKEY_USERS\.Default

You do this by rightclick on the node in regedit and selecting “Permissions”. Then you click on “Add…” and in the dialog you type in IIS APPPOOL\DefaultAppPool in the text field for object name and then press “Check Names”. Then you press “OK” and select “Full Control” and press “OK”.

NOTE: You may have to restart the application (e.g. through IISReset) before the registry changes has effect. In one case I had to set the application to run under NetworkService and then set it back to DefaultAppPool before the change took action.

Jan 19, 2010

Please login to comment.