V8.3.1 Error when comparing versions with embedded macros (e.g. table of contents)

Barry Kavanagh June 27, 2023

After upgrading Confluence Server to 8.3.1 when ew compare versions of pages with embedded macros we get the error below.


    Method "execute" failed for object com.atlassian.confluence.pages.actions.DiffPagesByVersionAction@6d632991

    class org.outerj.daisy.diff.helper.CleanBrokenAttributeQNamesHandler (in unnamed module @0x6bfcdbc8) cannot access class com.sun.org.apache.xml.internal.utils.XML11Char (in module java.xml) because module java.xml does not export com.sun.org.apache.xml.internal.utils to unnamed module @0x6bfcdbc8

2 answers

2 votes
Markus Kokott July 25, 2023

After upgrading from 7.19 to 8.3 we got the same issue.

Also we got a warning for fontconfig.

We solved the problem using openjdk 11 (configured in setjre.sh).

Looks like confluence isn't compatible with it's built in jre...

John Coffie July 28, 2023

Thank you! I upgraded to 8.4.0 and using jdk11 solved my problem also. 

Like Markus Kokott likes this
Anh Phi NGUYEN October 26, 2023

I upgraded to 8.4.0 and Open JDK 17.0.7 (I believe it goes the Confluence version) and still got the error.  I am upgrading to 8.5.2 LTS and still have the same error.  Any help could be appreciated. 

Markus Kokott October 27, 2023

I found a new setting in setenv.sh. Please check, if you have this setting:

# Add various JPMS arguments to allow Confluence to work on Java 17

Our fault was, to reuse the old setenv.sh from Confluence 7 without this entry.

I didn't test java 17 with this option, but it sounds helpful.

Anh Phi NGUYEN October 29, 2023

It works !!!.  Thanks and appreciate for your help.  I am using Data Centre for upgrading Confluence from 8.4.0 to version 8.5.2 LTS and Open JDK 17.0.7.  I need to add another statements in setenv.sh to make it displays as below 

CATALINA_OPTS=" --add-modules java.se --add-exports java.base/jdk.internal.ref=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.nio=ALL-UNNAMED --add-opens java.base/sun.nio.ch=ALL-UNNAMED --add-opens java.management/sun.management=ALL-UNNAMED --add-opens jdk.management/com.sun.management.internal=ALL-UNNAMED --add-opens=java.base/sun.util.calendar=ALL-UNNAMED ${CATALINA_OPTS}"
CATALINA_OPTS="-Datlassian.recovery.password=Password ${CATALINA_OPTS}"

Note: the second option is used with recovery_admin user and only modify before executing the command: sudo /usr/bin/systemctl start confluence   and only on sandpit server for testing purpose.

0 votes
Arkadiy July 4, 2023

I get the same error when comparing ANY page with ANY version.


Confluence version 8.3.2


What's going on, how do I fix it?

Suggest an answer

Log in or Sign up to answer
AUG Leaders

Atlassian Community Events