Skip to content

fix widgets: update widget app IDs to resolve CE9500 after marketplace module upgrade #1087

Description

@ArjenLammers

Problem

After upgrading a Marketplace module that ships widgets (e.g. DataWidgets 2.x → 3.x), Studio Pro shows CE9500 consistency errors on pages that contain those widgets. The error indicates that a widget property — specifically the app ID embedded in the widget configuration — no longer matches the widget definition shipped with the upgraded module.

Running mxcli fix widgets reports "0 units changed / nothing to update", so the command does not resolve CE9500.

Root cause

Widget instances stored in the MPR carry an appId (or equivalent identity field) that ties them to the specific version of the widget package that was installed when the page was last saved. When a major-version module upgrade replaces the widget mpk, the appId in existing widget instances on pages goes stale. Studio Pro validates this at open time and raises CE9500 for every stale instance.

fix widgets currently updates th
mxcli fix widgets (or a dedicated mxcli fix widget-ids sub-command) should:

  1. After updating the widget definition, scan all page and snippet documents for widget instances whose appId references the old widget version.
  2. Rewrite the stale appId to match the newly installed widget definition.
  3. Report how many instances were updated (similar to the existing "N unit(s) changed" output).

This would allow a fully headless upgrade pipeline to resolve CE9500 without requiring the developer to open Studio Pro and manually reconfigure each affected widget.

Steps to reproduce

  1. Open a Mendix 11 project that uses DataWidgets 2.x on several pages.
  2. Run mxcli marketplace update --to 3.x --force.
  3. Run mxcli fix widgets -p <project.mpr> — reports 0 changes.
  4. Open the project in Studio Pro → CE9500 on every page that had a DataWidgets 2.x widget.

Environment

  • mxcli v0.21.0
  • Mendix 11.12.4
  • DataWidgets upgraded from 2.31.0 → 3.11.4

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions