Openfire 5.1.1 .deb — new admin page (PubSub subscription management) fails to open; file missing from package

After upgrading from 5.1.0 to 5.1.1 (official .deb package, Debian 12), a new admin console page is not working. According to the logs, Openfire attempts to load a page named pubsub-subscription-maintenance-page.jsp but throws a ClassNotFoundException—the file for this page is simply missing from the .deb package.

I found a reference to this page in the admin plugin’s web.xml, but the corresponding .jsp file does not exist anywhere in the installation.

What works normally: the rest of the admin console (login, main pages), the Openfire server itself, and the PubSub duplication fix (OF-3306) introduced in this version—I tested and confirmed that there are no longer duplicates in the ofPubsubSubscription table.

What doesn’t work: only this specific new page, which appears to be a maintenance/viewing tool for PubSub subscriptions.

Environment: Openfire 5.1.1 (.deb), Debian 12 (bookworm), upgraded from 5.1.0 via dpkg -i, MariaDB 10.11 database.

Question: Does this happen only with the .deb package, or with other formats (RPM, ZIP) as well? Is there a way to access this page, or is it merely cosmetic/optional?

I am not seeing this issue on RPM, but do see the error message

The subscription data could not be analyzed: null

Boggling this more…

This is surprising - I don’t expect any of the distro-packages to be different to each-other in this way. What version of Java are you using, @gprilopes ?

@akrherz, I’m wondering if that error that you see is caused by your system not needing the migration. There’s a wonkey bit in our admin console:

<c:if test="${not analysisAvailable}">
    <admin:infobox type="error">
        <fmt:message key="pubsub.subscription.maintenance.analysis-failed">
            <fmt:param value="${analysisError}"/>
        </fmt:message>
    </admin:infobox>
</c:if>

This kind of expects that when analysis is not available, that there’s some kind of error - which I guess isn’t necessarily the case.

That’s likely it. I directly entered the JSP URL and don’t see a message on the admin console homepage.

1 Like

@guus Java version:

```

openjdk version “17.0.19” 2026-04-21

OpenJDK Runtime Environment (build 17.0.19+10-1-deb12u2-Debian)

OpenJDK 64-Bit Server VM (build 17.0.19+10-1-deb12u2-Debian, mixed mode, sharing)

```

Installed via Debian 12’s `default-jre-headless` package (which pulls in `openjdk-17-jre-headless` as the actual runtime).

Also, re: @akrherz’s finding that RPM shows the page but with a different error (“The subscription data could not be analyzed: null”) — that seems like a genuinely different failure mode than what I’m seeing. On the `.deb` install, the class for the JSP itself is missing entirely (`ClassNotFoundException`), so the servlet never starts at all — it’s not reaching the point where it could show any analysis error. That does point more toward this being a `.deb`-packaging-specific issue (the compiled `.jsp` class not being included in the build), separate from the JSTL/analysis-availability logic issue you flagged for the RPM case.

Happy to run any other diagnostic commands on my end if it helps narrow this down.

Do you have the service enabled in the PubSub Service Configuration?
I ran into the same problem.
Initially, the server didn’t notify me that maintenance was required, even though the logs clearly showed issues with PubSub.
I enabled the PubSub service.
A couple of minutes later, a notification appeared stating that maintenance was required, but then I encountered an error: “The subscription data could not be analyzed: null”
As a next step, I happened to install the “PubSub Server Info” plugin.
I noticed that after installing the plugin, a single “server-info” entry appeared under “PubSub Nodes” in the PubSub Service Configuration.
After some time - possibly following an Openfire restart - the “The subscription data could not be analyzed: null” error disappeared, and this is what I got:

There appears to be an issue in Openfire 5.1.1 that affects the maintenance functionality. So far, it seems to be limited to people using the embedded/HSQLDB database. It is discussed in more detail in this forum thread: Pub-Sub Cleanup fails