Onlyoffice.plone connectors run failed on Ubuntu 24.04 with Plone 6.0.11.1

Installed the onlyoffice.plone connectors successfully, but start plone failed.

 make start-backend
+ dirname /home/testuser/plone6/Makefile
+ make -C ./backend/ start
make[1]: Entering directory '/home/testuser/plone6/backend'
+ which python3
+ python3 -c 'import sys; print((int(sys.version_info[0]), int(sys.version_info[1])) >= tuple(map(int, '\''3.8'\''.split('\''.'\''))))'
+ PYTHONWARNINGS=ignore
+ ./bin/runwsgi instance/etc/zope.ini
2024-05-14 06:29:21,314 INFO    [plone.restapi.patches:16][MainThread] PATCH: Disabled ZPublisher.HTTPRequest.ZopeFieldStorage.VALUE_LIMIT. This enables file uploads larger than 1MB.
2024-05-14 06:29:21,507 INFO    [chameleon.config:39][MainThread] directory cache: /home/testuser/plone6/backend/instance/var/cache.
2024-05-14 06:29:22,034 INFO    [plone.volto:23][MainThread] Aliasing collective.folderish classes to plone.volto classes.
Traceback (most recent call last):
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 393, in endElementNS
    self.context.end()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/config.py", line 701, in end
    self.stack.pop().finish()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/config.py", line 868, in finish
    args = toargs(context, *self.argdata)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/config.py", line 1698, in toargs
    args[str(name)] = field.fromUnicode(s)
                      ^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/fields.py", line 174, in fromUnicode
    value = self.context.resolve(name)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/config.py", line 223, in resolve
    __import__(mname)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/onlyoffice/plone/browser/actions.py", line 27, in <module>
    from onlyoffice.plone.browser.interfaces import IConversionForm
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/onlyoffice/plone/browser/interfaces.py", line 27, in <module>
    from onlyoffice.plone.core import fileUtils
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/onlyoffice/plone/core/fileUtils.py", line 17, in <module>
    from plone.app.widgets.utils import get_relateditems_options
ModuleNotFoundError: No module named 'plone.app.widgets'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/testuser/plone6/backend/./bin/runwsgi", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Zope2/Startup/serve.py", line 251, in main
    return command.run()
           ^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Zope2/Startup/serve.py", line 189, in run
    app = self.loadapp(app_spec, name=app_name, relative_to=base,
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Zope2/Startup/serve.py", line 220, in loadapp
    return loadapp(app_spec, name=name, relative_to=relative_to, **kw)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/paste/deploy/loadwsgi.py", line 246, in loadapp
    return loadobj(APP, uri, name=name, **kw)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/paste/deploy/loadwsgi.py", line 271, in loadobj
    return context.create()
           ^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/paste/deploy/loadwsgi.py", line 738, in create
    return self.object_type.invoke(self)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/paste/deploy/loadwsgi.py", line 198, in invoke
    app = context.app_context.create()
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/paste/deploy/loadwsgi.py", line 738, in create
    return self.object_type.invoke(self)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/paste/deploy/loadwsgi.py", line 136, in invoke
    return fix_call(context.object, context.global_conf, **context.local_conf)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/paste/deploy/util.py", line 61, in fix_call
    val = callable(*args, **kw)
          ^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Zope2/Startup/run.py", line 61, in make_wsgi_app
    starter.prepare()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Zope2/Startup/starter.py", line 38, in prepare
    self.startZope()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Zope2/Startup/starter.py", line 94, in startZope
    Zope2.startup_wsgi()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Zope2/__init__.py", line 36, in startup_wsgi
    _startup()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Zope2/App/startup.py", line 126, in startup
    load_zcml()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Zope2/App/startup.py", line 41, in load_zcml
    load_site()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Zope2/App/zcml.py", line 45, in load_site
    _context = xmlconfig.file(site_zcml)
               ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 662, in file
    include(context, name, package)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 559, in include
    processxmlfile(f, context)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 409, in processxmlfile
    parser.parse(src)
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 105, in parse
    xmlreader.IncrementalParser.parse(self, source)
  File "/usr/lib/python3.12/xml/sax/xmlreader.py", line 124, in parse
    self.feed(buffer)
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 211, in feed
    self._parser.Parse(data, isFinal)
  File "../Modules/pyexpat.c", line 475, in EndElement
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 389, in end_element_ns
    self._cont_handler.endElementNS(pair, None)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 395, in endElementNS
    self._handle_exception(ex, info)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 393, in endElementNS
    self.context.end()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/config.py", line 701, in end
    self.stack.pop().finish()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/config.py", line 869, in finish
    actions = self.handler(context, **args)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/OFS/metaconfigure.py", line 47, in loadProducts
    xmlconfig.include(_context, zcml, package=product)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 559, in include
    processxmlfile(f, context)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 409, in processxmlfile
    parser.parse(src)
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 105, in parse
    xmlreader.IncrementalParser.parse(self, source)
  File "/usr/lib/python3.12/xml/sax/xmlreader.py", line 124, in parse
    self.feed(buffer)
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 211, in feed
    self._parser.Parse(data, isFinal)
  File "../Modules/pyexpat.c", line 475, in EndElement
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 389, in end_element_ns
    self._cont_handler.endElementNS(pair, None)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 395, in endElementNS
    self._handle_exception(ex, info)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 393, in endElementNS
    self.context.end()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/config.py", line 701, in end
    self.stack.pop().finish()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/config.py", line 869, in finish
    actions = self.handler(context, **args)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/plone/autoinclude/zcml.py", line 39, in includePluginsDirective
    loader.load_configure(context, filename, dists)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/plone/autoinclude/loader.py", line 180, in load_configure
    load_zcml_file(context, module_name, package, filename)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/plone/autoinclude/loader.py", line 173, in load_zcml_file
    include(context, filename, package)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 559, in include
    processxmlfile(f, context)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 409, in processxmlfile
    parser.parse(src)
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 105, in parse
    xmlreader.IncrementalParser.parse(self, source)
  File "/usr/lib/python3.12/xml/sax/xmlreader.py", line 124, in parse
    self.feed(buffer)
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 211, in feed
    self._parser.Parse(data, isFinal)
  File "../Modules/pyexpat.c", line 475, in EndElement
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 389, in end_element_ns
    self._cont_handler.endElementNS(pair, None)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 395, in endElementNS
    self._handle_exception(ex, info)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 393, in endElementNS
    self.context.end()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/config.py", line 701, in end
    self.stack.pop().finish()
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/config.py", line 869, in finish
    actions = self.handler(context, **args)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 559, in include
    processxmlfile(f, context)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 409, in processxmlfile
    parser.parse(src)
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 105, in parse
    xmlreader.IncrementalParser.parse(self, source)
  File "/usr/lib/python3.12/xml/sax/xmlreader.py", line 124, in parse
    self.feed(buffer)
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 211, in feed
    self._parser.Parse(data, isFinal)
  File "../Modules/pyexpat.c", line 475, in EndElement
  File "/usr/lib/python3.12/xml/sax/expatreader.py", line 389, in end_element_ns
    self._cont_handler.endElementNS(pair, None)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 395, in endElementNS
    self._handle_exception(ex, info)
  File "/home/testuser/plone6/backend/lib/python3.12/site-packages/zope/configuration/xmlconfig.py", line 237, in _handle_exception
    raise ZopeXMLConfigurationError(info, ex)
zope.configuration.xmlconfig.ZopeXMLConfigurationError: File "/home/testuser/plone6/backend/lib/python3.12/site-packages/onlyoffice/plone/browser/configure.zcml", line 34.2-41.8
    File "/home/testuser/plone6/backend/instance/etc/site.zcml", line 14.2-14.23
    File "/home/testuser/plone6/backend/lib/python3.12/site-packages/Products/CMFPlone/configure.zcml", line 128.2-132.8
    File "/home/testuser/plone6/backend/lib/python3.12/site-packages/onlyoffice/plone/configure.zcml", line 17.2-17.32
    ModuleNotFoundError: No module named 'plone.app.widgets'
make[1]: *** [Makefile:159: start] Error 1
make[1]: Leaving directory '/home/testuser/plone6/backend'
make: *** [Makefile:62: start-backend] Error 2

Hello @JIMYE
Is this separate case on the another server? I mean your second thread HTTPS not work with onlyofficedoc + Onlyoffice.plone + Plone 6
If so, please point me to the guides that you used for Plone and the connector app installations? Did the issue arise immediately after the connector app installation?

Just another server to test the last released version 6.0.11.1 of plone on the Ubuntu 24.04. Then we found out that the installation of onlyoffice connector failed.

Not related to another case which is Ubuntu 22.04+Plone 6.0.10.1.

The installation process is the same as Ubuntu 22.04+Plone 6.0.10.1, add onlyoffice.plone on the requirements.txt and run make build, installed Successfully, but start plone failed.

Hello @JIMYE

Could you please try to use Python v.3.4-3.7? It seems that your are using older version, meanwhile v.3.4 or later is required: Integration. Getting Started. Plone - ONLYOFFICE

python3.12 is the last stable release of Python:

Maybe onlyoffice doesn’t support the latest python, thank you! I’ll test python v3.11

Yes, please let us know if it resolves the situation.

The test results show that Onlyoffice.plone connector does not support the latest Python version 3.12.

Hope Onlyoffice will upgrade to support it, since the Ubuntu 24.04 default python verison is 3.12.

Additionally, if it’s convenient, could you please find the last post of this issue? HTTPS not work with onlyofficedoc + Onlyoffice.plone + Plone 6

HTTPS problem resolved, but onlyoffice cannot display any double-byte language.

Hello @JIMYE
As far as I can see, @Nikolas has already asked you to create a separate thread for the new case. Please do it and we will check out the situation.

Thank you! I have created: