Skip to content

Upgrade and Migration Hub

Robert Gorsuch edited this page Aug 7, 2026 · 2 revisions

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.

The EOL clock (why upgrades are not optional)

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

Where do I start from?

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.

The two blockers to solve first

Field data across real engagements rates these Blocker + Common — plan them before anything else:

  1. Keystore consistency — upgrading onto another machine creates a second, incompatible keystore and locks everyone out. Carry $HOME/.jrsks + .jrsksp to the new environment before first start; if the upgrade ever prompts to "create a keystore," abort. (Playbook sec 4a)
  2. Large-repository export/import — one-shot js-export/js-import is 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 hardest hop: 10.0

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.

Before you touch anything

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.