Upgrading WFFM When Upgrading From Version 7.2 to 7.5

When you upgrade from Sitecore 7.2 to Sitecore 7.5 you will also need to upgrade web forms for marketers (WFFM). In today’s guide, I’m going to go over the upgrade process and write about any potential issues you might encounter.

Let’s Get Started

The first thing you will need are the files required to upgrade, Web Forms for Marketers 2.5 rev. 141014.update and wffm.ctool.plugin.zip, available from here. When you upgrade Sitecore 7.2 to 7.5 you will need to upgrade WFFM from version 2.4 to 2.5.

Errors

Before talking about the upgrade process I think it’s useful to explain the things that went wrong for me so you check your solution for the same things to try to ensure your upgrade works more smoothly. When I initially tried the upgrade I got this error:

Exception details:
System.ArgumentNullException: Value cannot be null.
Parameter name: item
at Sitecore.Update.Installer.Items.CustomActionInstaller.Process(IProcessingContext entry, IProcessingContext context)

sitecore_wffm_75_upgrade_upgradepoststep_error

After talking to Sitecore support, they asked me if I had these items in my solution:

Master Database

  • /sitecore/system/Modules/Web Forms for Marketers/Settings/Actions/Save Actions/Save to Database

Core Database

  • /sitecore/content/Applications/Modules/Web Forms for Marketers/Form Reports/Ribbon/Home/Operations
  • /sitecore/content/Applications/Modules/Web Forms for Marketers/Form Reports/Ribbon/Home/Fields
  • /sitecore/content/Applications/Modules/Web Forms for Marketers/Form Reports/Menues

If you are missing any of these items from your solution, then the upgrade will fail as the wizard tries to delete these items and throws this exception if it can not find them.

sitecore_wffm_75_upgrade_upgradepoststep_fix

To fix the issue I had to create blank items for the missing items and re-run the upgrade wizard.

The Upgrade Wizard

To install the update you will need to use the upgrade wizard,

http://local.website.com/sitecore/admin/UpdateInstallationWizard.aspx

sitecore_upgrade_7.2

With the upgrade wizard loaded, you will now need to install the upgrade.

sitecore_upgrade_7.2_upgrade

Select ‘Marketers 2.5 rev. 141014.update’ from your machine and click through to install.

sitecore_75_wffm_upgrade_1

Click ‘Analyze and install the package’

sitecore_wffm_installation_complete

Click ‘Installation Results’

sitecore_75_wffm_upgrade_2

If everything goes correctly you should see a successful completion message. Expect to see a few collisions as mentioned in Sitecore documentation.

The files you need are now included in your solution. After installing the update you need to do the following re-building rigmarole:

  • Re-Index Your Search, How To Re-Index Your Search Results In Sitcore
  • Rebuild Your Link Database, How To Rebuild Your Sitecore Link Database
  • Rebuild Your Search Index, How To Rebuild Your Sitecore Link Database
  • Clear Your Temp Data
  • Update the Database

    After installing the update, you should now be able to see a folder within your webroot called ‘Data’ with a file called ‘WFFM_Analytic.sql’ in it.

    sitecore_75_wffm_upgrade_3

    You can also find the WFFM_Analytics.sql script is inside the .update package. If you change the extension of the update, from .update package to .zip you can unzip all the files. You need to run the scripts against the new reporting database you would have created in, How To Upgrade Sitecore 7.2 To Sitecore 7.5.

    Run WFFM.StoredProcesdure.AddFormStatisticsByContact.sql against the secondary reporting database.

    Configuration Changes

    Like most Sitecore upgrades you will also need to do a number of config changes. Into your ‘Sitecore.Analytics.Processing.Aggregation.config’ file, found in ‘App_Config’ -> ‘Include’.

    <!-- Facts -->
    

    If you search for this comment

              
    <SqlMappingEntity type="Sitecore.Analytics.Aggregation.SqlMappingEntity, Sitecore.Analytics.Sql">
    <Table>Fact_FormStatisticsByContact</Table>
    <Routine>Add_FormStatisticsByContact</Routine>
    </SqlMappingEntity>         
    

    Then add in this config section snippet directly under the FACT comment.

    Captcha

    In your web.config add the following in the ‘configuration’ -> ‘system.webServer’ -> ‘handlers’ section.

    <add name="CaptchaImage" verb="*" path="CaptchaImage.axd" type="Sitecore.Form.Core.Pipeline.RequestProcessor.CaptchaResolver, Sitecore.Forms.Core" />
    <add name="CaptchaAudio" verb="*" path="CaptchaAudio.axd" type="Sitecore.Form.Core.Pipeline.RequestProcessor.CaptchaResolver, Sitecore.Forms.Core" />
    

    Finally

    Perform a smart publish on the whole site to make sure everything is up to date:

    sitecore_wffm_75_upgrade_publish

    In Sitecore desktop, select ‘Publish’

    sitecore_wffm_75_upgrade_publish_1

    Select ‘Smart Publish’ then select ‘Publish’. If everything worked as expected you should now be fully upgraded.

    Jon D Jones

    Software Architect, Programmer and Technologist Jon Jones is founder and CEO of London-based tech firm Digital Prompt. He has been working in the field for nearly a decade, specializing in new technologies and technical solution research in the web business. A passionate blogger by heart , speaker & consultant from England.. always on the hunt for the next challenge

    More Posts

    1 reply

    Trackbacks & Pingbacks

    1. […] If you have any modules installed, like web forms for marketers then these may need to be upgraded as well. If you have WFFM installed, then I suggest you read, Upgrading WFFM When Upgrading From Version 7.2 to 7.5. […]

    Leave a Reply

    Want to join the discussion?
    Feel free to contribute!

    Leave a Reply

    Your email address will not be published. Required fields are marked *