Wednesday, June 29, 2011

Approval URL in Nintex 2010 on SharePoint 2010 Multi Web Farm environment

The Background
We were developing the Workflows around SharePoint 2010 with some custom forms for the workflow running on a list with Nintex 2010, a 3rd party workflow designing/developing tool for developing the workflow.

The Issue
We developed the system on a standalone SharePoint installation and UAT was also done on the same, but when it came to deploying it live, we had a web farm environment set up there. We had one application server, 2 web servers and 1 database server. All this went on fine until we setup the live environment and tested the workflow. The notification email for the task consisted of a workflow variable i.e. a builtin feature of Nintex saying “Approval URL” It contained the link to the URL that will show the Task. On clicking on it, one of two tasks were showing the right URL but the last one was giving a URL that was the server URL and it did not show the Alternate Access Mapping set in the Central Admin of SharePoint 2010.
For e.g. the URL should have been http://abc/pages/edittask.aspx?id=123, instead of which it was creating a link like http://webserver1:1111/pages/edittask.aspx?id=123 which was showing the web server name instead of the alternate URL set through Central Admin.

The Solution
I did some research on this issue and found out that this happens in Nintex in cases where we have a server farm. The only useful help that I could find on this issue on Nintex forums was on Nintex Connect.
As we had alternate access mapping configured on live, Nintex used the default zone to create the Approval URL for a workflow at runtime. So in order to create the link with respect to the access mapping declared in central admin, we need to configure nintex to the zone on which the URLs are to be created. Going through the NWAdmin Operations Manual, we were able to solve this problem using the configuration script provided by Nintex.

For this purpose we had to
- Run the NWAdmin.exe tool (Nintex Admin tool). It is located in the folder where Nintex is installed.
- For setting up the “Intranet” zone for the Approval URL, from the above example let us suppose we have defined the public URL for zone is “http://abc” which maps to an internal site url of “webserver1:1111”. For this purpose we need to run the script as:

nwadmin.exe -o AddZoneSetting -type WebApplication -url http://imach21:80 -zone Intranet

where parameters –type defines scope of the zone, -url is the URL for which the zone settings it to be added, -zone defines the zone which is to be used. For more details you can consult the NWAdmin Operations Manual of Nintex under the heading AddZoneSetting.

1 comment:

  1. Interesting post! I enjoyed reading it!
    Thanks for sharing this useful info.keep updating same way.
    Cheers,
    Ramesh Roy
    SharePoint Consulting Services

    ReplyDelete