Font Size:
Ask Joget AI

Migrating plugins from Joget DX 8 to Joget DX 9

Introduction

When upgrading Joget from Joget DX 8 to Joget DX 9, users may observe duplicate plugin files and irregular behavior during startup. This is due to Joget DX 9’s migration feature, which automatically converts plugins using javax.* namespaces into jakarta.* namespaces to support Java 17 and above.

Joget DX 9 plugin migration details

  • Minimum Supported Java Version: Joget DX 9 requires Java 17 (also supports Java 21).
  • Namespace Migration: Any DX 8 plugin using javax.* will be migrated to jakarta.* to ensure seamless upgrades.
  • Intermediary Files: During migration, temporary files (.lock, .transformed) are created.
  • Final Files:
    • .original: An untouched backup of the plugin JAR for safekeeping.
    • .jar: The transformed JAR, compatible with Java 17+ and Jakarta EE.
  • Architecture: This migration is built into Joget DX9’s codebase. Developers can review the implementation here.

Clarification

  • This behavior is expected and correct as it is a migration feature.
  • Issues only arise if a custom plugin continues to rely on Joget DX 8 dependency files.
  • Developers should recompile plugins against the Joget DX 9 SDK and Jakarta EE dependencies for full compatibility.

Post-Migration Steps

After migrating the plugins from Joget DX 8, one final step is to ensure the new System Manager and App Creator User Roles introduced in Joget DX 9 are available in Users > Edit User > Role(s). Execute the following SQL query in your database:

INSERT INTO dir_role VALUES ("ROLE_SYSTEM_MANAGER","System Manager","System Manager"), ("ROLE_APP_CREATOR","App Creator","App Creator");

Related Documents

Created by Debanraj Ravindran Last modified by Debanraj Ravindran on Sep 03, 2026