Hello.
I’m having a problem trying to edit a document from a nextcloud server.
My nextcloud server is running version v18.0.6 (I’ve just updated from v18.0.1 in case it was needed), on Centos 7, and php v7.3.8.
I’ve installed both the collabora online (v3.7.0) and Wopi (v3.5.4) apps in nextcloud.
I’m running collabora online development edition v4.2.3 in a docker container. I start it with the following command:
docker run --name collabora -t -d -p 10.210.54.71:9980:9980 -e "domain=xcloud.domain.com|nextcloud.domain.com" -e "username=admin" -e "password=some_password" --restart always --cap-add MKNOD collabora/code
When I try to edit some document, I get the following error:
Failed to read document from storage. Please contact your storage server (xcloud.domain.com) administrator
This is an excerpt from the docker container logs:
wsd-00006-00126 2020-06-09 18:42:54.503698 [ docbroker_00d ] ERR WOPI::CheckFileInfo failed with 403 Forbidden| wsd/Storage.cpp:585 wsd-00006-00126 2020-06-09 18:42:54.504248 [ docbroker_00d ] ERR loading document exception: WOPI::CheckFileInfo failed| wsd/DocumentBroker.cpp:1356 wsd-00006-00126 2020-06-09 18:42:54.504328 [ docbroker_00d ] ERR Failed to add session to [/owncloud/index.php/apps/richdocuments/wopi/files/2071240_ocod2c27dtnn] with URI [https://xcloud.domain.com/owncloud/index.php/apps/richdocuments/wopi/files/2071240_ocod2c27dtnn?access_token=EQxe0cvrAYEY6VaZ0Y2wJyTEZ31Eve9i&access_token_ttl=0]: WOPI::CheckFileInfo failed| wsd/DocumentBroker.cpp:1318 wsd-00006-00126 2020-06-09 18:42:54.504549 [ docbroker_00d ] ERR No DocBroker found, or DocBroker marked to be destroyed. Terminating session ToClient-04e| wsd/ClientSession.cpp:325 wsd-00006-00126 2020-06-09 18:42:54.504606 [ docbroker_00d ] ERR No DocBroker found, or DocBroker marked to be destroyed. Terminating session ToClient-04e| wsd/ClientSession.cpp:325 wsd-00006-00126 2020-06-09 18:42:54.681226 [ docbroker_00d ] ERR Invalid or unknown session [04e] to remove.| wsd/DocumentBroker.cpp:1394 warn:sal.osl:127:31:sal/osl/unx/security.cxx:442: mkdir(/opt/lool/.config): errno=2 wsd-00006-00030 2020-06-09 18:42:56.505861 [ prisoner_poll ] WRN Prisoner connection disconnected but without valid socket.| wsd/LOOLWSD.cpp:1938
That 403 error in the first line annoys me…
In the nextcloud server logs I can find the following:
{"reqId":"Xt-YLq2Owdc2MhGnC7-wmwAAABE","level":3,"time":"2020-06-09T18:42:54+00:00","remoteAddr":"10.210.54.70","user":"--","app":"richdocuments","method":"GET","url":"/owncloud/index.php/apps/richdocuments/wopi/files/2071240_ocod2c27dtnn?access_token=EQxe0cvrAYEY6VaZ0Y2wJyTEZ31Eve9i&access_token_ttl=0","message":{"Exception":"BadFunctionCallException","Message":"path is not a valid attribute","Code":0,"Trace":[{"file":"/var/www/html/owncloud/lib/public/AppFramework/Db/Entity.php","line":149,"function":"setter","class":"OCP\\AppFramework\\Db\\Entity","type":"->","args":["path",[""]]},{"file":"/var/www/html/owncloud/lib/public/AppFramework/Db/Entity.php","line":75,"function":"__call","class":"OCP\\AppFramework\\Db\\Entity","type":"->","args":["setPath",[""]]},{"file":"/var/www/html/owncloud/apps/richdocuments/lib/Db/WopiMapper.php","line":131,"function":"fromRow","class":"OCP\\AppFramework\\Db\\Entity","type":"::","args":[{"id":"2673","owner_uid":"gcediel","editor_uid":"gcediel","fileid":"2071240","version":"0","path":"","canwrite":"1","server_host":"https://xcloud.domain.com/owncloud/","token":"EQxe0cvrAYEY6VaZ0Y2wJyTEZ31Eve9i","expiry":"1591729973","share":null,"template_destination":"0","hide_download":"0","direct":"0","is_remote_token":"0","template_id":"0"}]},{"file":"/var/www/html/owncloud/apps/richdocuments/lib/Controller/WopiController.php","line":139,"function":"getWopiForToken","class":"OCA\\Richdocuments\\Db\\WopiMapper","type":"->","args":["EQxe0cvrAYEY6VaZ0Y2wJyTEZ31Eve9i"]},{"file":"/var/www/html/owncloud/lib/private/AppFramework/Http/Dispatcher.php","line":170,"function":"checkFileInfo","class":"OCA\\Richdocuments\\Controller\\WopiController","type":"->","args":["2071240","EQxe0cvrAYEY6VaZ0Y2wJyTEZ31Eve9i"]},{"file":"/var/www/html/owncloud/lib/private/AppFramework/Http/Dispatcher.php","line":99,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Richdocuments\\Controller\\WopiController"},"checkFileInfo"]},{"file":"/var/www/html/owncloud/lib/private/AppFramework/App.php","line":125,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->","args":[{"__class__":"OCA\\Richdocuments\\Controller\\WopiController"},"checkFileInfo"]},{"file":"/var/www/html/owncloud/lib/private/AppFramework/Routing/RouteActionHandler.php","line":47,"function":"main","class":"OC\\AppFramework\\App","type":"::","args":["OCA\\Richdocuments\\Controller\\WopiController","checkFileInfo",{"__class__":"OC\\AppFramework\\DependencyInjection\\DIContainer"},{"fileId":"2071240_ocod2c27dtnn","_route":"richdocuments.wopi.checkFileInfo"}]},{"function":"__invoke","class":"OC\\AppFramework\\Routing\\RouteActionHandler","type":"->","args":[{"fileId":"2071240_ocod2c27dtnn","_route":"richdocuments.wopi.checkFileInfo"}]},{"file":"/var/www/html/owncloud/lib/private/Route/Router.php","line":299,"function":"call_user_func","args":[{"__class__":"OC\\AppFramework\\Routing\\RouteActionHandler"},{"fileId":"2071240_ocod2c27dtnn","_route":"richdocuments.wopi.checkFileInfo"}]},{"file":"/var/www/html/owncloud/lib/base.php","line":1008,"function":"match","class":"OC\\Route\\Router","type":"->","args":["/apps/richdocuments/wopi/files/2071240_ocod2c27dtnn"]},{"file":"/var/www/html/owncloud/index.php","line":38,"function":"handleRequest","class":"OC","type":"::","args":[]}],"File":"/var/www/html/owncloud/lib/public/AppFramework/Db/Entity.php","Line":120,"CustomMessage":"--"},"userAgent":"LOOLWSD WOPI Agent 4.2.3","version":"18.0.6.0"}
However, the interesting thing is that from another nextcloud instance (running v13.0.2), EVERYTHING WORKS, so it seems that it’s exclusively a problem with the nextcloud v18.0.6 instance. There are no firewall or routing issues involved, and no 403 errors shown in the docker container logs when the nextcloud v13.0.2 is connected to collabora.
Something weird I also see is that, from the web gui, the icons for the office documents are blank (not showing the libreoffice documents).
Any suggestions?
Thanks for your attention.