Xwiki 11.10.3 LTS and RtWysiwyg

Since I upgraded to Xwiki 11.10, I wanted to try RtWysiwyg again to see if the concurrent modification issues it had in Xwiki 10.11 related to attachments are gone now.

Unfortunately, I cannot seem to get it to work any more.

Xwiki is installed on Debian Buster using the Tomcat 9 Xwiki LTS packages.

I installed the rtwysiwyg extension and it also shows up in the Xwiki settings. The editor itself does not seem to provide any realtime features, though. Pages are still only locked and there’s no way offered (at least none I could find) to enter any kind of realtime mode.

Unfortunately, the extension’s own wiki page at https://extensions.xwiki.org/xwiki/bin/view/Extension/RtWysiwyg is rather scarce if it comes to installation or setup instructions…

I found the following possibly related Exception in the logs, but don’t know how to solve it - and Google also didn’t know any solution and could not provide further hints on this:

[2020-03-08 19:30:56] [info] 2020-03-08 19:30:56,197 [https://xwiki.ohrner-it.com/xwiki/bin/jsx/RTFrontend/LoadEditors?minify=false&demoMode=f
alse&v=1.37] ERROR .s.DefaultScriptServiceManager - Failed to lookup script service for role hint [websocket]
[2020-03-08 19:30:56] [info] org.xwiki.component.manager.ComponentLookupException: Failed to lookup component [org.xwiki.contrib.websocket.scr
ipt.XWikiWebSocketScriptService] identified by type [interface org.xwiki.script.service.ScriptService] and hint [websocket]
[2020-03-08 19:30:56] [info] #011at org.xwiki.component.embed.EmbeddableComponentManager.getInstance(EmbeddableComponentManager.java:204)
[2020-03-08 19:30:56] [info] #011at org.xwiki.component.embed.EmbeddableComponentManager.getInstance(EmbeddableComponentManager.java:210)
[2020-03-08 19:30:56] [info] #011at org.xwiki.component.internal.multi.DelegateComponentManager.getInstance(DelegateComponentManager.java:83)
[2020-03-08 19:30:56] [info] #011at org.xwiki.component.internal.multi.DelegateComponentManager.getInstance(DelegateComponentManager.java:83)
[2020-03-08 19:30:56] [info] #011at org.xwiki.component.internal.multi.DelegateComponentManager.getInstance(DelegateComponentManager.java:83)
[2020-03-08 19:30:56] [info] #011at org.xwiki.component.internal.multi.DelegateComponentManager.getInstance(DelegateComponentManager.java:83)

Any ideas?

I think the extension needs https://extensions.xwiki.org/xwiki/bin/view/Extension/WebSocket but I’m not quite sure why it’s not listed in the dependencies. If that’s ok you could give a try by installing WebSocket extension and trying again to use RTWysiwyg.

I already checked that WebSocket is installed:

image

That was about the first thing I verified, as the error message sounds as if there could be some problem with regard to WebSockets.

Maybe I should try to uninstall / reinstall the WebSocket extension?

Or are there any further / better ideas?

The problem was somewhere else:

[2020-03-08 10:52:32] [info] Caused by: java.lang.RuntimeException: SSL enabled with websocket.ssl.certChainFile set but the certChainFile doe
s not seem to exist.

was buried deep down in the stack trace.

Background / solution: A while ago I upgraded from Xwiki’s Tomcat8 packages to Tomcat9 when I migrated from Debian Stretch to Buster.

The Debian packages for Tomcat8 and Tomcat9 use different user accounts, tomcat8 and tomcat, respectively.

I had to add the tomcat user to the ssl-cert group so it had permissions to access dehydrated's Let’s Encrypt certificates…

With the tomcat8 user, I originally had done so, but this of course got lost because of Debian’s Tomcat user account change.