-
Notifications
You must be signed in to change notification settings - Fork 0
Upgrade and Migration Hub
Everything you need to plan a JasperReports Server upgrade from any version (4.7+) to 10.x, distilled from the complete vendor documentation corpus and real field engagements.
Canonical source:
references/upgrade-migration-playbook.md— this page is a summary (facts as of 2026-08). Per-era depth:references/version-archive/. Deep 9.0→10.1 delta:references/version-matrix.md.
Per the published Jaspersoft support policy (Mainstream vs LTS, V.R.L numbering):
| Version | Status | What it means |
|---|---|---|
| 7.x and older | EOL, unsupported | Security exposure grows monthly |
| 8.0.x LTS | EOL 12/31/2025 | Extended-with-patches lapsed 6/30/2026; no patches at any price |
| 8.1 / 8.2 | EOL 2024 / 2025 | Migration is the only path |
| 9.0.0 LTS | Supported to 12/31/2027 | Hard wall — Extended Support is no longer for sale |
| 10.0.0 LTS | Supported to 12/31/2029 | The recommended landing zone |
| 10.1.0 | Mainstream | Hotfixes only until the next release ships |
Direct-source windows per target (each target's own upgrade guide):
| You are on | Path to 10.x |
|---|---|
| 10.0 | → 10.1 (samedb or overlay) |
| 9.0 | → 10.1 direct (newdb), or → 10.0 (samedb) → 10.1 |
| 8.0.x – 8.2 | → 10.0.0 (newdb, direct) → 10.1 (samedb) |
| 7.1 – 7.9 | → 8.2 (newdb) → 9.0 → 10.x |
| 6.x | → 7.1 (newdb) → 8.2 → 9.0 → 10.x |
| 5.x and older | → 6.4.x first, then the 6.x row |
Rules that trip everyone: samedb only works from the adjacent release (LTS→LTS always needs newdb); Compact/Split installs never cross during a hop; exports never import into older servers.
Field data across real engagements rates these Blocker + Common — plan them before anything else:
-
Keystore consistency — upgrading onto another machine creates a second, incompatible keystore and locks everyone out. Carry
$HOME/.jrsks+.jrskspto the new environment before first start; if the upgrade ever prompts to "create a keystore," abort. (Playbook sec 4a) -
Large-repository export/import — one-shot
js-export/js-importis notoriously fragile at scale. Export from buildomatic (not the UI), raise JVM heap, slice by folder, verify the zip before touching the old server. (Playbook sec 4b)
The 10.0 jump is the biggest platform break in a decade — plan extra time for:
Jakarta EE 10 (every custom javax.* integration must be rewritten), Tomcat 10.1/11 only, Java 17/21 only, Hibernate 6, a new license manager, and per-page CSRF tokens (csrfguard 4.3.0).
Other cliff highlights: keystore introduced at 7.5 - Chromium required for PDF export from ~7.8/8.1 - Spring Security rewrite + permanent legacy-dashboard deletion at 7.2 - .xls export removed at 8.2 - Progress/TI* JDBC drivers removed at 9.0 - one-way password hashing + Castor→Jackson at 10.1. Full table: playbook sec 3.
The playbook ends with a 19-step pre-upgrade checklist (backups incl. keystore, license placement, platform verification, js-upgrade-newdb test dry-run, post-upgrade validation). If you use the jasper-deploy skill, doctor.ps1 automates the environment preflight and smoke_test.ps1 proves the server after.
Facts stamped 2026-08. The playbook and version archive in the repo are updated as new versions ship; this page links rather than repeats wherever dates can drift.