Upgrading to Forms 2.4 and higher

November 14, 2023

About migrating from Form Factory

To upgrade to the latest Forms 2.7 version from Form Factory, you must first upgrade from Form Factory 2.3.0 to Forms 2.4.0 using the forms-migrator 2.4.1. Then, you can migrate directly to 2.7.

Note: Forms versions 2.4.0 and higher are compatible with DX 7.3.0.1+ and Jahia 7.3.2.0+.

Before you upgrade:

  • Ensure that you first read these instructions entirely before you take any action.
  • Run the migration in a sandbox environment first, then move to preproduction and production.
  • Ensure that a backup exists for your Jahia data.
  • Remember to check the Jahia logs at every step of the upgrade.

Prerequisites 

You must have all of your custom Form Factory modules updated and ready to be deployed with dependencies to:

<dependency>
    <groupId>org.jahia.modules</groupId>
    <artifactId>forms-core</artifactId>
    <version>2.4.0</version>
    <scope>provided</scope>
</dependency>

To find all the modules installed on your platform with dependencies on Form Factory, execute this a Groovy script with the JCR Console tool (found in the JCR Data section in support tools).

def rows = session.getWorkspace().getQueryManager().createQuery("SELECT [j:title] FROM [jnt:moduleVersion] where [j:dependencies] = 'form-factory-core'",javax.jcr.query.Query.JCR_SQL2).execute().getRows();
rows.each({row -> log.info(row.getValue('j:title').getString())})

When executed it will print the list of dependent modules, like the following example plus/minus the modules you have installed on your platform:

Form Factory Snippets Extension
Form Factory No CSS Theme
Form Factory prefill examples
Form Factory Extended Inputs

Migrating to Forms 2.4 and higher

To migrate to Forms:

  1. Ensure that Form Factory core is running on your server.
  2. Download, install, and start the Forms Migrator module from the Jahia store. Ensure that this module is started and running on all Jahia nodes in the cluster.
  3. Install the Forms Core module. The migrator will take care of all the necessary steps for migration, including definitions, stop and uninstall the previous Form Factory modules while you are deploying the new ones, and migrating your site dependencies to the new modules. This will be done across the cluster.
  4. Also install all the modules from Forms that you use (Snippets, No CSS, Prefill, Extended Inputs, and Elasticsearch Storage) and your custom modules. Check that the modules are installed and started on all Jahia nodes in the cluster.

The migration to Forms 2.4 or higher is now complete.