NetIQ Identity Manager 4.8 Service Pack 7 Form Builder and Form Renderer Release Notes

1.0 What’s New?

The FormIO version has been upgraded to 4.14.6 in Form Renderer and Designer's Form Builder. This version of FormIO is not fully backward compatible with the previous version shipped with Identity Manager. As a result, several form components and functionality in this version may behave differently than in previous versions. If you have workflows that use custom JSON forms, we recommend that you read the Backward Compatibility Issues before applying the patch. Before implementing Form Builder upgrades in production environments, you must first ensure that all forms are rendered correctly and that all functionality is working as expected in a pre-production environment.

In addition, this release addresses several previous issues in the Form Builder and Form Renderer. Of the many issues resolved in this patch, the following section lists a few of them:

1.1 Dashboard Successfully Loads a JSON Form With Multiple Tabs

When requesting a workflow in Identity Manager Dashboard, if the associated JSON form has multiple tabs, the application renders all tabs correctly.

1.2 Refresh On and Clear Value on Refresh Functionality in Form Builder’s Data Grid Component Works as Expected

If you enable the Data Grid component to clear and refresh the value, the values in Data Grid component reloads when another field is changed. The user must provide a logic in the Calculated Value to reload the default value.

1.3 JSON Form Displays an Error If the Validation Check on a Dynamic Form Field Fails

This release fixes a previous issue wherein JSON forms did not display an error when the validation check on a dynamic form field failed. If there is a validation error, users will no longer be able to submit the form.

1.4 Form Builder: RoleVault.getRolesUserIn Function Modified

Prior to Identity Manager 4.8.7 version, the RoleVault.getRolesUserIn function could only retrieve 10 role assignment permissions for a given user by default when making a REST API call to /rest/access/assignments/role/list. This release onwards, you can add the second attribute true to retrieve information on all roles.

Syntax: Here is the method signature:

RoleVault.getRolesUserIn('IDM','/rest/access/assignments/role/list',userDN,true)

1.5 Form Builder: RoleVault.getRoleAssignmentCause Function Modified

Prior to Identity Manager 4.8.7 version, the RoleVault.getRoleAssignmentCause function could only retrieve 10 roles by default when making a REST API call to /rest/access/assignments/list/v2. This release onwards, you can add the third attribute true to retrieve all roles.

Syntax: Here is the method signature:

RoleVault.getRoleAssignmentCause('IDM','/rest/access/assignments/list/v2',identityDn, roleDn, true)

1.6 Searching Long Texts in a Select Form Field Works as Expected

This release fixes an issue in the Select component’s search functionality that prevented values longer than 50 characters from appearing in the search result. The Select component now allows searching values up to 1,000 characters in length.

2.0 Planning Your Upgrade

This service pack contains the Identity_Manager_4.8.7_Forms_update.zip with the following deliverables:

  • FormBuilder-4.8.7.zip for Linux platform

  • FormBuilder-4.8.7.zip for Windows platform

  • FormBuilder-4.8.7.zip for macOS platform

  • IgaFormRendererUI-1.0.6-bundle.zip for Windows and netiq-forms-1.0.6-1.noarch for Linux platforms

  • NOVLUABASE_4.8.7.20230523234433 for updating User Application Driver package on Identity Manager Designer

2.1 Considerations for Upgrade

  • The update process requires at a minimum a base version for the following Identity Manager components:

    • Identity Applications 4.8.6 or 4.8.7

    • Identity Manager Designer 4.8.6 or 4.8.7

  • All three deliverables in this patch, namely Form Builder, Form Renderer, and User Application Driver package, are interdependent. If you upgrade Form Builder on your Designer, you must also upgrade Form Renderer on Identity Applications and the User Application Driver package on Designer.

3.0 Upgrading Form Builder

3.1 Upgrading Form Builder on Linux

  1. Log in to the computer where Designer is installed.

  2. Download the Identity_Manager_4.8.7_Forms_update.zip from the Software License and Downloads portal and extract all the files to a local directory.

  3. Navigate to the <extracted_location>/Formbuilder/Linux directory, then unzip the FormBuilder-4.8.7.zip and copy all the files.

  4. In Designer installation location, navigate to the plugins directory and locate the latest Linux Form Builder com.mf.linux.gtk.formbuilder_4.0.0.<timestamp>. To determine the latest version, look for the most recent <timestamp> in the plugins directory.

    For example, com.mf.linux.gtk.formbuilder_4.0.0.202306021258

  5. Take a backup of all the files in the lib directory.

  6. Now delete the files in the lib directory and replace them with the files copied in Step 3.

  7. Launch Designer.

  8. In the Provisioning view, go to the Workflow Forms and open a custom JSON form in Form Builder. Go to Settings > About and ensure that the Identity Manager Form Builder version is 4.8.7.

3.2 Upgrading Form Builder on Windows

  1. Log in to the computer where Designer is installed.

  2. Download the Identity_Manager_4.8.7_Forms_update.zip from the Software License and Downloads portal and extract all the files to a local folder.

  3. Navigate to the <extracted_location>\Formbuilder\Windows folder, then unzip the FormBuilder-4.8.7.zip and copy all the files.

  4. In Designer installation location, navigate to the plugins folder and locate the latest Windows Form Builder com.mf.win.win32.formbuilder_4.0.0.<timestamp> folder. To determine the latest version, look for the most recent <timestamp> in the plugins folder.

    For example, C:\netiq\idm\apps\Designer\plugins\com.mf.win.win32.formbuilder_4.0.0.202305231146

  5. Double-click the selected Windows Form Builder folder and take a backup of all the files in the lib folder.

  6. Now delete the files in the lib folder and replace them with the files copied in Step 3.

  7. Launch Designer.

  8. In the Provisioning view, go to the Workflow Forms and open a custom JSON form in Form Builder. Go to Settings > About and ensure that the Identity Manager Form Builder version is 4.8.7.

3.3 Upgrading Form Builder on macOS

  1. Download the Identity_Manager_4.8.7_Forms_update.zip from the Software License and Downloads portal and extract all the files.

  2. Navigate to the extracted location > Mac, unzip the FormBuilder-4.8.7.zip and copy FormBuilder.app.

  3. Navigate to Applications > Designer > plugins and locate the latest Form Builder for macOS.

    For example, com.mf.mac.cocoa.formbuilder_<timestamp>

    To determine the latest version, look for the most recent <timestamp> in plugins.

  4. Expand the selected MacOS Form Builder and take a backup of all the files in lib.

  5. Now delete the files in the lib folder and replace them with the files copied in Step 2.

  6. Launch Designer.

  7. In the Provisioning view, go to the Workflow Forms and open a custom JSON form in Form Builder. Go to Settings > About and ensure that the Identity Manager Form Builder version is 4.8.7.

3.4 Upgrading the User Application Driver Package

  1. Log in to the computer where Designer is installed.

  2. Download the Identity_Manager_4.8.7_Forms_update.zip from the Software License and Downloads portal and extract the files to a local folder.

  3. Launch Designer.

  4. In the Outline view, right-click Package Catalog, then select Import Package.

  5. In Select Package window, click Browse, then browse to and select the NOVLUABASE_4.8.7.20230523234433 package in the <extracted_location>\Identity_Manager_4.8.7_Forms_update\Packages\plugins folder and click OK.

  6. Click OK to import the selected packages.

  7. Review the import message, then click OK.

  8. In the Modeler view, right-click the User Application driver, then click Driver > Properties.

  9. Click Packages.

    A check mark indicates a newer version of a package in the Available Upgrades column.

  10. Click Select Operation drop-down for the User Application Base and select Upgrade.

  11. Select the radio button against the NOVLUABASE_4.8.7.20230523234433.jar package, then click OK.

  12. Click Apply.

  13. (Conditional) Fill in the fields with appropriate information to upgrade the package, then click Next.

  14. Read the summary of the packages that will be installed, then click Finish.

  15. Review the upgraded package, then click OK to close the Package Management page.

  16. Deploy the changes and restart the driver.

4.0 Upgrading Form Renderer

4.1 Upgrading Form Renderer on Linux

  1. Stop the NGINX service by executing the following command:

    systemctl stop netiq-nginx.service
  2. Navigate to the /etc/init.d directory and stop the Golang service by executing the following command:

    ./netiq-golang.sh stop
  3. Now navigate to the /opt/netiq/idm/apps/sites/forms directory and take a back up of all the files.

  4. Delete all the files from the /forms directory using the following command:

    rm -r *
  5. Download the Identity_Manager_4.8.7_Forms_update.zip from the Software License and Download portal and extract the files to a local directory.

  6. Navigate to the <extracted location>/Formrenderer/Linux directory.

  7. Run the following command:

    rpm -Uvh netiq-forms-1.0.6-1.noarch.rpm
  8. (Conditional) If you install the rpm as root, navigate to the /opt/netiq/idm/apps/sites directory and run the following commands to add execute permission and user rights for the replaced files:

    chmod +x forms/
    chown -R novlua:novlua forms/
  9. Navigate back to the /opt/netiq/idm/apps/sites directory. To extract the IgaFormRendererUI-1.0.6-bundle.tar.gz and copy the files to the forms directory, run the following command:

    tar -zxvf IgaFormRendererUI-1.0.6-bundle.tar.gz -C /opt/netiq/idm/apps/sites/forms/
  10. Navigate to the /etc/init.d directory and start the Golang service by executing the following command:

    ./netiq-golang.sh start
  11. Start the NGINX services by executing the following command:

    systemctl start netiq-nginx.service

4.2 Upgrading Form Renderer on Windows

  1. From the Windows services, stop the NetIQ IGA Form Renderer Service and NetIQ Nginx Service running on your Identity Applications server.

  2. Navigate to the C:\NetIQ\IDM\apps\sites\forms location and take a back up of all the files.

  3. Delete all the files from the forms folder.

  4. Download the Identity_Manager_4.8.7_Forms_update.zip from the Software License and Download portal and extract the files to a local folder.

  5. Navigate to the <extracted location>\Formrenderer\Windows folder and rename the IgaFormRenderer-1.0.6 file to IGA-form-renderer-server.

  6. Now extract the IgaFormRendererUI-1.0.6-bundle.zip and copy all the files to the C:\NetIQ\IDM\apps\sites\forms folder.

  7. Replace IGA-form-renderer-server in the C:\NetIQ\IDM\apps\sites\ folder with IGA-form-renderer-server renamed in Step 5.

  8. From the Windows services, start the NetIQ IGA Form Renderer Service and NetIQ Nginx Service on your Identity Applications server.

5.0 Known Issues

NetIQ Corporation strives to ensure our products provide quality solutions for your enterprise software needs. The following issues are currently being researched. If you need further assistance with any issue, contact Technical Support.

5.1 NullPointerException Displayed When Launching the Form Builder

Issue: The Designer displays Java.lang.NullPointerException when it tries to launch Form Builder. You may encounter this error after upgrading Form Builder in Designer while creating a new JSON form or opening a custom JSON form under Workflow Forms.

Workaround: To resolve the error, restart Designer.

5.2 Backward Compatibility Issues

This section includes a list of functionality issues you may encounter while using Form Builder to create JSON forms, migrating existing JSON forms to the new forms engine, or when the Form Renderer on the Identity Manager Dashboard renders the forms.

  • Deprecation of Refresh On and addition of Redraw On functionality: Refresh On is no longer available in the Data tab of any Form Builder components, except for the Select component. Any logic that uses Refresh On in an existing custom JSON form will no longer be executed. You need to replace it with a different triggering mechanism, like Redraw On.

  • With the new forms engine, the Calculated Value() function is not triggered on every event, as it used to behave earlier. It can now be used to store logic that will be executed in based on a trigger.

  • The Custom Default Value() function is executed only when a form is loaded, not when the fields are redrawn. If you want to use an existing JSON form with the new forms engine, ensure that you move the logic from the Custom Default Value() function to the Calculated Value() function.

  • It has been observed that at times while using a regional locale, certain components, for example, labels on the buttons, text fields, tabs, select boxes, and drop-down lists, are not rendered properly. The workaround is to manually add the localization key.

  • When you try to change a form name, the edit button next to the form name disappears.

    You can resolve the issue by changing the form name in Form JSON view.

  • The labels for certain form fields are found missing in the Preview window. This might happen if you change the form name, resulting in incorrect localization keys being added to the form JSON file.

    You can resolve the issue by:

    • Changing the form name in Form JSON view, or

    • Delete the incorrect localization entries from the Form JSON after changing the form name

  • Unable to add custom CSS style to a form component via a function.

    You can resolve the issue by deleting the “localization” instance from the JSON file.

  • The Save button in Designer may not always work for newly produced PRDs. Use the keyboard shortcut ctrl+S to save the PRD.

  • Unable to use the Data Item Mapping functionality in JSON forms. This issue is specific to the custom components in Form Builder. Data Item Mapping in PRD works as expected.

  • Dynamic Entity component does not show the selected eDirectory object.

  • Actions like request and approve for buttons are missing from the default request and approval forms. The same capability can be achieved by using custom actions in the Display tab of the Button component.

  • The labels for certain form fields changes when new form components are added or an existing form component is updated. This issue happens when the localization keys are not present and the Redraw On option is selected. You can resolve it by including the keys for localization in the JSON forms.

  • Text case such as upper, lower, or mixed case is ignored when the value is set using the instance.setValue(), instance.setFieldValue() functions. You can provide the values manually in the input fields instead.

  • Unable to add the Select Boxes component to a JSON form when using the CustomDefaultValue() function to load a DAL list. When adding the Select Boxes, you must define a first value by default, even if the value is set using Custom Default Value. The Custom Default Value will take precedence. It will not have any effect on the existing Select Boxes.

  • If the JS Editor’s comparison functionality does not work, you must edit the syntax to achieve the desired functionality.

  • References to array items may cause errors in the browser console log. You may need to change it.

    For example, change:

    value = data.saveUserDetails['TelephoneNumber'][0];

    to

    value = data.saveUserDetails['TelephoneNumber'];

6.0 Contact Information

Our goal is to provide documentation that meets your needs. If you have suggestions for improvements, please email Documentation-Feedback@netiq.com. We value your input and look forward to hearing from you.

For detailed contact information, see the Support Contact Information website.

For general corporate and product information, see the NetIQ Corporate website.

For interactive conversations with your peers and NetIQ experts, become an active member of our community. The NetIQ online community provides product information, useful links to helpful resources, blogs, and social media channels.

7.0 Legal Notice

For information about legal notices, trademarks, disclaimers, warranties, export and other use restrictions, U.S. Government rights, patent policy, and FIPS compliance, see https://www.netiq.com/company/legal/.

© 2023 NetIQ Corporation. All Rights Reserved.