Confluence Upload Word/Excel document does not work

I have a Confluence Data Center 7.19.12.

When I tried to import a Word/Excel document by:

  1. Create a new page.
  2. Drag a Word/Excel document onto the page.

That gave me this error:

In the log files I got these:

2023-09-13 10:20:45,244 INFO [http-nio-8090-exec-7 url: /500page.jsp; user: admin] [atlassian.confluence.status.SystemErrorInformationLogger] writeToLog 
Request Unique ID : 81878070-71d9-4dff-944a-72314f2acee4
--------------------------
JVM Stats
--------------------------
xmx = 1073741824
usedNonHeap = 597557256
availableHeap = 296595176
availableNonHeap = -1
allocatedHeap = 1073741824
freeAllocatedHeap = 296595176
maxNonHeap = -1
availablePermGen = 0
maxPermGen = -1
maxHeap = 1073741824
usedHeap = 777146648
usedPermGen = -1
xms = 1073741824
--------------------------
Request Information
--------------------------
URL: http://localhost:8090/500page.jsp
Scheme: http
Server: localhost
Port: 8090
URI: /500page.jsp
Context Path: 
Servlet Path: /500page.jsp
Path Info: null
Query String: pageId=2129921&filename=Production%20Release%20Guide%20v0.2.doc&size=607744&minorEdit=true&spaceKey=TS&mimeType=application%2Fmsword&atl_token=050b21fa4046d56b857b42be9cce167c7c9228a4&contentType=page&isVFMSupported=true&name=Production%20Release%20Guide%20v0.2.doc
--------------------------
Attributes
--------------------------
javax.servlet.forward.request_uri: /plugins/drag-and-drop/upload.action
javax.servlet.forward.context_path: 
javax.servlet.forward.servlet_path: /plugins/drag-and-drop/upload.action
javax.servlet.forward.query_string: pageId=2129921&filename=Production%20Release%20Guide%20v0.2.doc&size=607744&minorEdit=true&spaceKey=TS&mimeType=application%2Fmsword&atl_token=050b21fa4046d56b857b42be9cce167c7c9228a4&contentType=page&isVFMSupported=true&name=Production%20Release%20Guide%20v0.2.doc
javax.servlet.forward.mapping: org.apache.catalina.core.ApplicationMapping$MappingImpl@5988e9eb
org.apache.catalina.AccessLog.RemoteAddr: 0:0:0:0:0:0:0:1
javax.servlet.error.status_code: 500
brave.SpanCustomizer: SpanCustomizer(RealSpan(64f89bd22c6e6564/64f89bd22c6e6564))
com.atlassian.confluence.impl.profiling.DecoratorTimings: com.atlassian.confluence.impl.profiling.DecoratorTimings@3a9986d8
com.opensymphony.sitemesh.APPLIED_ONCE: true
__cleanup_recursion_counter: 0
com.atlassian.confluence.util.message.MessagesDecoratorFilter__already_filtered__: true
com.atlassian.confluence.web.filter.validateparam.RequestParamValidationFilter_already_filtered: true
atlassian.core.seraph.original.url: /500page.jsp?pageId=2129921&filename=Production%20Release%20Guide%20v0.2.doc&size=607744&minorEdit=true&spaceKey=TS&mimeType=application%2Fmsword&atl_token=050b21fa4046d56b857b42be9cce167c7c9228a4&contentType=page&isVFMSupported=true&name=Production%20Release%20Guide%20v0.2.doc
com.atlassian.labs.botkiller.BotKillerFilter: true
org.apache.catalina.AccessLog.Protocol: HTTP/1.1
com.atlassian.gzipfilter.GzipFilter_already_filtered: true
Confluence-Request-Time: 1694571645085
com.atlassian.confluence.web.ConfluenceJohnsonFilter_already_filtered: true
com.atlassian.seraph.auth.LoginReason: OK
webwork.valueStack: com.opensymphony.xwork.util.OgnlValueStack@5e9e3d0a
confluence.themecontext: com.atlassian.confluence.themes.ThemeContext@6b7e723c
org.apache.catalina.AccessLog.ServerPort: 8090
javax.servlet.error.message: 
javax.servlet.error.servlet_name: action
org.apache.tomcat.request.forwarded: true
brave.propagation.TraceContext: 64f89bd22c6e6564/64f89bd22c6e6564
brave.servlet.TracingFilter$SendHandled: true
org.apache.tomcat.remoteAddr: 0:0:0:0:0:0:0:1
org.apache.catalina.AccessLog.ServerName: localhost
B3-TraceId: bed7e13c0aac3c
loginfilter.already.filtered: true
javax.servlet.error.request_uri: /plugins/drag-and-drop/upload.action
com.atlassian.core.filters.HeaderSanitisingFilter_already_filtered: true
com.atlassian.prettyurls.filter.PrettyUrlsSiteMeshFixupFilter: true
org.apache.catalina.AccessLog.RemoteHost: 0:0:0:0:0:0:0:1
javax.servlet.error.exception: javax.servlet.ServletException: Servlet execution threw an exception
os_securityfilter_already_filtered: true
com.atlassian.prettyurls.filter.PrettyUrlsSiteMeshFilter: true
--------------------------
Parameters
--------------------------
pageId : 2129921
filename : Production Release Guide v0.2.doc
size : 607744
minorEdit : true
spaceKey : TS
mimeType : application/msword
atl_token : 050b21fa4046d56b857b42be9cce167c7c9228a4
contentType : page
isVFMSupported : true
name : Production Release Guide v0.2.doc
caused by: javax.servlet.ServletException: Servlet execution threw an exception
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:216)
caused by: java.lang.NoClassDefFoundError: Could not initialize class com.atlassian.plugins.conversion.convert.image.ImagingConverter
at com.atlassian.confluence.plugins.conversion.impl.DefaultConversionManager.getConverters(DefaultConversionManager.java:125)

2023-09-13 10:20:50,169 WARN [attachment-text-extraction-worker-3] [confluence.impl.hibernate.ConfluenceHibernateTransactionManager] doRollback Performing rollback. Transactions:
  ->[com.atlassian.confluence.internal.index.attachment.AttachmentTextExtractionFunction.apply]: PROPAGATION_REQUIRES_NEW,ISOLATION_DEFAULT (Session #922978512)

It will attempt to use various classes if I use a different document (.doc, .docx, .xls, .xlsx, etc.), but they all end up as NoClassDefFoundError.

I saw this one:

And I already tried all the options.

  • Cleared plugin cache
  • Added CATALINA_OPTS
    None of them worked.

Bandana value is:

<map>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:blogpost-trashed-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-inline-tasks:task-email-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:comment-created-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:page-trashed-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:blogpost-edited-hipchat-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:page-edited-hipchat-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.share-page:share-page-hipchat-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:page-moved-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-like:like-created-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.synchrony-interop</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-request-access-plugin:request-access-notification-email-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:follower-added-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-hipchat-integration-plugin</string>
    <boolean>false</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:page-created-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-onboarding:notification-template-less-users-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.plugins.base-hipchat-integration-plugin-api</string>
    <boolean>false</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-file-notifications:file-content-update-email-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-onboarding:notification-template-no-spaces-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-collaborative-editor-plugin</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-mentions-plugin:mention-hipchat-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.plugins.base-hipchat-integration-plugin</string>
    <boolean>false</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:comment-edited-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-inline-comments:notification-template-new-mail-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-notifications-batch-plugin:batching-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.share-page:share-attachment-email-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.share-page:share-draft-email-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:blogpost-created-hipchat-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:page-edited-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-inline-comments:notification-template-resolve-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-inline-comments:notification-template-reply-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-inline-tasks:task-hipchat-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-hipchat-emoticons-plugin</string>
    <boolean>false</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.share-page:share-page-email-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:blogpost-created-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:comment-edited-hipchat-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:blogpost-edited-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:follower-added-hipchat-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:comment-created-hipchat-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:page-created-hipchat-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-content-notifications-plugin:forgot-password-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-mentions-plugin:mention-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-file-notifications:file-content-remove-email-notification-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-request-access-plugin:grant-access-notification-email-template-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.confluence.plugins.confluence-like:like-created-notification-template-hipchat-body</string>
    <boolean>true</boolean>
  </entry>
  <entry>
    <string>com.atlassian.labs.hipchat.confluence-hipchat</string>
    <boolean>false</boolean>
  </entry>
</map>

Though that thread didn’t say what I should be looking for.

I checked the JAR files in my Confluence installation.

The ImageConverter class is only found in:
META-INF/lib/jogl-all-2.3.2-natives-linux-armv6hf.jar
com/atlassian/plugins/conversion/confluence/parser/CssColor$JJCalls.class
com/atlassian/plugins/conversion/confluence/parser/ParseException.class
com/atlassian/plugins/conversion/convert/html/Streamable.class
com/atlassian/plugins/conversion/convert/html/HtmlConversionResult.class
com/atlassian/plugins/conversion/convert/html/word/AbstractStringExtractor.class
com/atlassian/plugins/conversion/convert/image/ImagingConverter.class

There are other implementations, e.g.
META-INF/lib/jogl-all-2.3.2-natives-solaris-i586.jar
com/atlassian/plugins/conversion/confluence/parser/ConfluenceTextChunkTokenManager.class
com/atlassian/plugins/conversion/convert/html/HtmlConversionData.class
com/atlassian/plugins/conversion/convert/html/word/StringExtractor.class
com/atlassian/plugins/conversion/convert/html/word/AbstractStringExtractor$1.class
com/atlassian/plugins/conversion/convert/image/ImagingConverter$2.class
com/atlassian/plugins/conversion/convert/image/WordsConverter$ConvertibleByteArrayOutputStream.class
com/atlassian/plugins/conversion/convert/bean/BeanResult.class
com/atlassian/plugins/conversion/convert/bean/BeanFile.class

But none of the JAR files seem to be for Windows.

I found this:
https://confluence.atlassian.com/confkb/unable-to-preview-attachments-when-viewing-a-page-but-other-attachment-functions-work-without-issue-945542592.html

Plugin “Confluence Document Conversion Library” is already enabled.

There’s no plugin named “Confluence Files” but I found “confluence-files” system plugin is disabled. I enabled it.

Now I can attach Word documents without error, but nothing shows up either. Publishing the page, I get this:

There’s yet another plugin disabled, “Confluence Office Connector”.
Enabling it, uploading Office documents finally work.

The other threads I saw got the plugins disabled because of upgrading.

My Confluence DC is a fresh install from the installer using a new directory and empty database. Why are the plugins disabled by default?

Still not quite there.

2023-09-13 15:46:06,910 ERROR [http-nio-8090-exec-10 url: /rest/office/1.0/view; user: admin] [com.benryan.rest.ConverterMacroResource] getContent Sandbox has crashed while serving the request
 -- referer: http://localhost:8090/display/TS/Word+Import | url: /rest/office/1.0/view | traceId: 98068a3760b94aa9 | userName: admin
2023-09-13 15:46:06,910 WARN [http-nio-8090-exec-2 url: /rest/office/1.0/view; user: admin] [impl.util.sandbox.SandboxProcess] startIfDead Sandbox 0 has died
 -- referer: http://localhost:8090/display/TS/Word+Import | url: /rest/office/1.0/view | traceId: c2a517489a7bdcf6 | userName: admin
2023-09-13 15:46:06,914 WARN [http-nio-8090-exec-2 url: /rest/office/1.0/view; user: admin] [impl.util.sandbox.SandboxProcess] startIfDead Attempting to restart the sandbox 0
 -- referer: http://localhost:8090/display/TS/Word+Import | url: /rest/office/1.0/view | traceId: c2a517489a7bdcf6 | userName: admin
2023-09-13 15:46:09,909 ERROR [http-nio-8090-exec-2 url: /rest/office/1.0/view; user: admin] [com.benryan.rest.ConverterMacroResource] getContent Sandbox has crashed while serving the request
 -- referer: http://localhost:8090/display/TS/Word+Import | url: /rest/office/1.0/view | traceId: c2a517489a7bdcf6 | userName: admin

Log says,

2023-09-13 16:19:22,563 ERROR [Caesium-1-2] [atlassian.plugins.conversion.AsposeUtils] license Failed to load license for aspose-imaging
class com.aspose.imaging.coreexceptions.FrameworkException: Failed to set license. Details: Culture Name: en-HK is not a supported culture
com.aspose.imaging.License.setLicense(Unknown Source)
com.atlassian.plugins.conversion.AsposeUtils.license(AsposeUtils.java:69)
com.atlassian.plugins.conversion.AsposeAware.<clinit>(AsposeAware.java:12)
com.atlassian.confluence.plugins.conversion.impl.DefaultConversionManager.getConverters(DefaultConversionManager.java:125)
com.atlassian.confluence.plugins.conversion.impl.DefaultConversionManager.init(DefaultConversionManager.java:88)
com.atlassian.confluence.plugins.conversion.impl.ConversionLoaderRunner.runJob(ConversionLoaderRunner.java:29)
com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.doRunJob(JobRunnerWrapper.java:117)
com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.lambda$runJob$0(JobRunnerWrapper.java:87)
com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContextInternal(VCacheRequestContextManager.java:84)
com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContext(VCacheRequestContextManager.java:68)
com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.runJob(JobRunnerWrapper.java:87)
com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:134)
com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:106)
com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:90)
com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.launchJob(CaesiumSchedulerService.java:464)
com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeLocalJob(CaesiumSchedulerService.java:431)
com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeQueuedJob(CaesiumSchedulerService.java:409)
com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeJob(SchedulerQueueWorker.java:66)
com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeNextJob(SchedulerQueueWorker.java:60)
com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.run(SchedulerQueueWorker.java:35)
java.base/java.lang.Thread.run(Unknown Source)
	at com.aspose.imaging.License.setLicense(Unknown Source)
	at com.atlassian.plugins.conversion.AsposeUtils.license(AsposeUtils.java:69)
	at com.atlassian.plugins.conversion.AsposeAware.<clinit>(AsposeAware.java:12)
	at com.atlassian.confluence.plugins.conversion.impl.DefaultConversionManager.getConverters(DefaultConversionManager.java:125)
	at com.atlassian.confluence.plugins.conversion.impl.DefaultConversionManager.init(DefaultConversionManager.java:88)
	at com.atlassian.confluence.plugins.conversion.impl.ConversionLoaderRunner.runJob(ConversionLoaderRunner.java:29)
	at com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.doRunJob(JobRunnerWrapper.java:117)
	at com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.lambda$runJob$0(JobRunnerWrapper.java:87)
	at com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContextInternal(VCacheRequestContextManager.java:84)
	at com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContext(VCacheRequestContextManager.java:68)
	at com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.runJob(JobRunnerWrapper.java:87)
	at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:134)
	at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:106)
	at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:90)
	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.launchJob(CaesiumSchedulerService.java:464)
	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeLocalJob(CaesiumSchedulerService.java:431)
	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeQueuedJob(CaesiumSchedulerService.java:409)
	at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeJob(SchedulerQueueWorker.java:66)
	at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeNextJob(SchedulerQueueWorker.java:60)
	at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.run(SchedulerQueueWorker.java:35)
	at java.base/java.lang.Thread.run(Unknown Source)
2023-09-13 16:19:23,270 INFO [Catalina-utility-1] [com.atlassian.confluence.lifecycle] init Confluence is ready to serve
2023-09-13 16:19:25,161 ERROR [Caesium-1-2] [atlassian.scheduler.core.JobLauncher] launchAndBuildResponse Scheduled job with ID 'conversionLoader' failed due to binary incompatibilities
java.lang.ExceptionInInitializerError
	at com.aspose.slides.FontsLoader.do(Unknown Source)
	at com.aspose.slides.FontsLoader.loadExternalFonts(Unknown Source)
	at com.atlassian.plugins.conversion.AsposeUtils.configureFonts(AsposeUtils.java:135)
	at com.atlassian.plugins.conversion.AsposeAware.<clinit>(AsposeAware.java:13)
	at com.atlassian.confluence.plugins.conversion.impl.DefaultConversionManager.getConverters(DefaultConversionManager.java:125)
	at com.atlassian.confluence.plugins.conversion.impl.DefaultConversionManager.init(DefaultConversionManager.java:88)
	at com.atlassian.confluence.plugins.conversion.impl.ConversionLoaderRunner.runJob(ConversionLoaderRunner.java:29)
	at com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.doRunJob(JobRunnerWrapper.java:117)
	at com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.lambda$runJob$0(JobRunnerWrapper.java:87)
	at com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContextInternal(VCacheRequestContextManager.java:84)
	at com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContext(VCacheRequestContextManager.java:68)
	at com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.runJob(JobRunnerWrapper.java:87)
	at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:134)
	at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:106)
	at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:90)
	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.launchJob(CaesiumSchedulerService.java:464)
	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeLocalJob(CaesiumSchedulerService.java:431)
	at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeQueuedJob(CaesiumSchedulerService.java:409)
	at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeJob(SchedulerQueueWorker.java:66)
	at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeNextJob(SchedulerQueueWorker.java:60)
	at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.run(SchedulerQueueWorker.java:35)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: class com.aspose.slides.exceptions.ArgumentException: Culture Name: en-HK is not a supported culture
com.aspose.slides.internal.fw.if.for(Unknown Source)
com.aspose.slides.internal.fw.if.<init>(Unknown Source)
com.aspose.slides.internal.fw.if.do(Unknown Source)
com.aspose.slides.internal.gj.char.try(Unknown Source)
com.aspose.slides.internal.fw.if.int(Unknown Source)
com.aspose.slides.ms.System.r.if(Unknown Source)
com.aspose.slides.Collections.Specialized.CollectionsUtil.createCaseInsensitiveHashtable(Unknown Source)
com.aspose.slides.internal.nf.case.do(Unknown Source)
com.aspose.slides.internal.nd.try.<init>(Unknown Source)
com.aspose.slides.internal.nd.float.do(Unknown Source)
com.aspose.slides.internal.nd.float.<init>(Unknown Source)
com.aspose.slides.internal.nd.if.<init>(Unknown Source)
com.aspose.slides.internal.fv.for.<init>(Unknown Source)
com.aspose.slides.internal.o5.implements.<init>(Unknown Source)
com.aspose.slides.internal.o8.short.<clinit>(Unknown Source)
com.aspose.slides.FontsLoader.do(Unknown Source)
com.aspose.slides.FontsLoader.loadExternalFonts(Unknown Source)
com.atlassian.plugins.conversion.AsposeUtils.configureFonts(AsposeUtils.java:135)
com.atlassian.plugins.conversion.AsposeAware.<clinit>(AsposeAware.java:13)
com.atlassian.confluence.plugins.conversion.impl.DefaultConversionManager.getConverters(DefaultConversionManager.java:125)
com.atlassian.confluence.plugins.conversion.impl.DefaultConversionManager.init(DefaultConversionManager.java:88)
com.atlassian.confluence.plugins.conversion.impl.ConversionLoaderRunner.runJob(ConversionLoaderRunner.java:29)
com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.doRunJob(JobRunnerWrapper.java:117)
com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.lambda$runJob$0(JobRunnerWrapper.java:87)
com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContextInternal(VCacheRequestContextManager.java:84)
com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContext(VCacheRequestContextManager.java:68)
com.atlassian.confluence.impl.schedule.caesium.JobRunnerWrapper.runJob(JobRunnerWrapper.java:87)
com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:134)
com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:106)
com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:90)
com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.launchJob(CaesiumSchedulerService.java:464)
com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeLocalJob(CaesiumSchedulerService.java:431)
com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeQueuedJob(CaesiumSchedulerService.java:409)
com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeJob(SchedulerQueueWorker.java:66)
com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeNextJob(SchedulerQueueWorker.java:60)
com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.run(SchedulerQueueWorker.java:35)
java.base/java.lang.Thread.run(Unknown Source)
	at com.aspose.slides.internal.fw.if.for(Unknown Source)
	at com.aspose.slides.internal.fw.if.<init>(Unknown Source)
	at com.aspose.slides.internal.fw.if.do(Unknown Source)
	at com.aspose.slides.internal.gj.char.try(Unknown Source)
	at com.aspose.slides.internal.fw.if.int(Unknown Source)
	at com.aspose.slides.ms.System.r.if(Unknown Source)
	at com.aspose.slides.Collections.Specialized.CollectionsUtil.createCaseInsensitiveHashtable(Unknown Source)
	at com.aspose.slides.internal.nf.case.do(Unknown Source)
	at com.aspose.slides.internal.nd.try.<init>(Unknown Source)
	at com.aspose.slides.internal.nd.float.do(Unknown Source)
	at com.aspose.slides.internal.nd.float.<init>(Unknown Source)
	at com.aspose.slides.internal.nd.if.<init>(Unknown Source)
	at com.aspose.slides.internal.fv.for.<init>(Unknown Source)
	at com.aspose.slides.internal.o5.implements.<init>(Unknown Source)
	at com.aspose.slides.internal.o8.short.<clinit>(Unknown Source)
	... 22 more
2023-09-13 16:20:28,756 ERROR [http-nio-8090-exec-6] [[Standalone].[localhost].[/].[noop]] log Servlet.service() for servlet [noop] in context with path [] threw exception
java.lang.NullPointerException: Deflater has been closed
	at java.base/java.util.zip.Deflater.ensureOpen(Unknown Source)
	at java.base/java.util.zip.Deflater.deflate(Unknown Source)
	at java.base/java.util.zip.Deflater.deflate(Unknown Source)
	at java.base/java.util.zip.GZIPOutputStream.finish(Unknown Source)
	at java.base/java.util.zip.DeflaterOutputStream.close(Unknown Source)
	at com.atlassian.gzipfilter.GzipResponseStream.close(GzipResponseStream.java:26)
	at com.atlassian.gzipfilter.util.IOUtils.closeQuietly(IOUtils.java:108)
	at com.atlassian.gzipfilter.GzipResponseWrapper.finishResponse(GzipResponseWrapper.java:54)
	at com.atlassian.gzipfilter.SelectingResponseWrapper.finishResponse(SelectingResponseWrapper.java:336)
	at com.atlassian.gzipfilter.GzipFilter.doFilterInternal(GzipFilter.java:116)
	at com.atlassian.gzipfilter.GzipFilter.doFilter(GzipFilter.java:92)
	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:62)
	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:37)
	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.lambda$doFilter$0(DelegatingPluginFilter.java:57)
	at com.atlassian.confluence.web.filter.ConfluenceTimingFilter.doFilter(ConfluenceTimingFilter.java:47)
	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:62)
	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:37)
	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.lambda$doFilter$0(DelegatingPluginFilter.java:57)
	at com.atlassian.prettyurls.filter.PrettyUrlsCombinedMatchDispatcherFilter.doFilter(PrettyUrlsCombinedMatchDispatcherFilter.java:56)
	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:62)
	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:37)
	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.lambda$doFilter$0(DelegatingPluginFilter.java:57)
	at com.atlassian.confluence.extra.webdav.servlet.filter.WebdavRequestForwardFilter.doFilter(WebdavRequestForwardFilter.java:72)
	at com.atlassian.confluence.extra.webdav.servlet.filter.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:29)
	at com.atlassian.plugin.servlet.filter.DelegatingPluginFilter.doFilter(DelegatingPluginFilter.java:62)
	at com.atlassian.plugin.servlet.filter.IteratingFilterChain.doFilter(IteratingFilterChain.java:37)
	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:56)
	at com.atlassian.plugin.servlet.filter.ServletFilterModuleContainerFilter.doFilter(ServletFilterModuleContainerFilter.java:44)
	at com.atlassian.johnson.plugin.servlet.filter.JohnsonServletFilterModuleContainerFilter.doFilter(JohnsonServletFilterModuleContainerFilter.java:50)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.util.MobileAppRequestFilter.doFilter(MobileAppRequestFilter.java:36)
	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:32)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.internal.web.filter.spring.IgnoreWebAsyncManagerFilter.doFilter(IgnoreWebAsyncManagerFilter.java:59)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.web.filter.validateparam.RequestParamValidationFilter.doFilter(RequestParamValidationFilter.java:51)
	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:32)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.web.filter.TranslationModeFilter.doFilter(TranslationModeFilter.java:39)
	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:32)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.plugin.servlet.filter.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:71)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.web.filter.LanguageExtractionFilter.doFilter(LanguageExtractionFilter.java:39)
	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:32)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.impl.vcache.VCacheRequestContextFilter.lambda$doFilter$3(VCacheRequestContextFilter.java:44)
	at com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContextInternal(VCacheRequestContextManager.java:84)
	at com.atlassian.confluence.impl.vcache.VCacheRequestContextManager.doInRequestContext(VCacheRequestContextManager.java:68)
	at com.atlassian.confluence.impl.vcache.VCacheRequestContextFilter.doFilter(VCacheRequestContextFilter.java:43)
	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:32)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.util.LoggingContextFilter.doFilter(LoggingContextFilter.java:33)
	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:32)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.util.RequestCacheThreadLocalFilter.doFilter(RequestCacheThreadLocalFilter.java:67)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at brave.servlet.TracingFilter.doFilter(TracingFilter.java:87)
	at com.atlassian.confluence.web.filter.ZipkinTracingFilter.doFilter(ZipkinTracingFilter.java:49)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.web.filter.ResponseOutputStreamFilter.doFilter(ResponseOutputStreamFilter.java:25)
	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:32)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.web.filter.AbstractStaticResourceAwareFilter.doFilter(AbstractStaticResourceAwareFilter.java:45)
	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:32)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.web.filter.ThreadLocalCacheFilter.doFilter(ThreadLocalCacheFilter.java:25)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.core.filters.HeaderSanitisingFilter.doFilter(HeaderSanitisingFilter.java:37)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.servlet.FourOhFourErrorLoggingFilter.doFilter(FourOhFourErrorLoggingFilter.java:64)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.internal.diagnostics.HttpRequestMonitoringFilter.doFilter(HttpRequestMonitoringFilter.java:42)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at com.atlassian.confluence.web.filter.DebugFilter.doFilter(DebugFilter.java:63)
	at com.atlassian.core.filters.AbstractHttpFilter.doFilter(AbstractHttpFilter.java:32)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:178)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:153)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:481)
	at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:768)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:673)
	at org.apache.catalina.valves.StuckThreadDetectionValve.invoke(StuckThreadDetectionValve.java:188)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.base/java.lang.Thread.run(Unknown Source)
2023-09-13 16:20:35,237 ERROR [http-nio-8090-exec-4 url: /rest/office/1.0/view; user: admin] [com.benryan.rest.ConverterMacroResource] getContent Sandbox has crashed while serving the request
 -- referer: http://localhost:8090/display/TS/Word+Import | url: /rest/office/1.0/view | traceId: 61d71df4a14e54c8 | userName: admin
2023-09-13 16:20:35,238 WARN [http-nio-8090-exec-7 url: /rest/office/1.0/view; user: admin] [impl.util.sandbox.SandboxProcess] startIfDead Sandbox 0 has died
 -- referer: http://localhost:8090/display/TS/Word+Import | url: /rest/office/1.0/view | traceId: 070c267d04f03b37 | userName: admin
2023-09-13 16:20:35,239 WARN [http-nio-8090-exec-7 url: /rest/office/1.0/view; user: admin] [impl.util.sandbox.SandboxProcess] startIfDead Attempting to restart the sandbox 0
 -- referer: http://localhost:8090/display/TS/Word+Import | url: /rest/office/1.0/view | traceId: 070c267d04f03b37 | userName: admin
2023-09-13 16:20:37,838 ERROR [http-nio-8090-exec-7 url: /rest/office/1.0/view; user: admin] [com.benryan.rest.ConverterMacroResource] getContent Sandbox has crashed while serving the request
 -- referer: http://localhost:8090/display/TS/Word+Import | url: /rest/office/1.0/view | traceId: 070c267d04f03b37 | userName: admin

“en-HK” is not supported culture… my system information says,

But I already set it in setenv.bat:

Fixed the user.country problem, Windows service needs to be changed using tomcat9w, not the bat file.

Added these parameters:
-Duser.language=en
-Duser.country=US
-Ddocument.conversion.sandbox.request.time.limit.secs=600
-Dconversion.sandbox.pool.size=50

But then it is still not working.

This is all I get in the log file:

2023-09-13 16:41:17,217 ERROR [http-nio-8090-exec-5 url: /rest/office/1.0/view; user: admin] [com.benryan.rest.ConverterMacroResource] getContent Sandbox has crashed while serving the request
 -- referer: http://localhost:8090/display/TS/Word+Import | url: /rest/office/1.0/view | traceId: 2bad98e8465f833b | userName: admin
2023-09-13 16:41:17,837 ERROR [http-nio-8090-exec-3 url: /rest/office/1.0/view; user: admin] [com.benryan.rest.ConverterMacroResource] getContent Sandbox has crashed while serving the request
 -- referer: http://localhost:8090/display/TS/Word+Import | url: /rest/office/1.0/view | traceId: e0fae5175a8f2395 | userName: admin


What is this 422 error?

Confluence service is using en-US:

But turning on logging for all classes, I found this:

2023-09-13 17:36:08,700 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: Exception in thread "main" java.lang.ExceptionInInitializerError
2023-09-13 17:36:08,700 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: 	at com.aspose.slides.FontsLoader.do(Unknown Source)
2023-09-13 17:36:08,700 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: 	at com.aspose.slides.FontsLoader.loadExternalFonts(Unknown Source)
2023-09-13 17:36:08,700 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: 	at com.atlassian.plugins.conversion.AsposeUtils.configureFonts(AsposeUtils.java:135)
2023-09-13 17:36:08,700 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: 	at com.atlassian.plugins.conversion.AsposeAware.<clinit>(AsposeAware.java:13)
2023-09-13 17:36:08,701 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: 	at com.atlassian.plugins.conversion.sandbox.html.SandboxHtmlConversionTask.apply(SandboxHtmlConversionTask.java:39)
2023-09-13 17:36:08,701 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: 	at com.atlassian.plugins.conversion.sandbox.html.SandboxHtmlConversionTask.apply(SandboxHtmlConversionTask.java:19)
2023-09-13 17:36:08,701 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: 	at com.atlassian.confluence.impl.util.sandbox.SandboxServerWorker.processNextMessage(SandboxServerWorker.java:53)
2023-09-13 17:36:08,701 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: 	at com.atlassian.confluence.impl.util.sandbox.SandboxServer.run(SandboxServer.java:36)
2023-09-13 17:36:08,701 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: 	at com.atlassian.confluence.impl.util.sandbox.SandboxServer.main(SandboxServer.java:56)
2023-09-13 17:36:08,701 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker24: Caused by: class com.aspose.slides.exceptions.ArgumentException: Culture Name: en-HK is not a supported culture

Why is Sandbox not following Confluence’s language/country settings?