首页 > 基础资料 博客日记
java整合onlyoffice的各种坑
2023-08-27 17:49:32基础资料围观903次
项目场景:
引入在线预览文件的服务(onlyoffice),集成在自己项目之中,实现多种文件格式的在线预览。
问题描述
前提:
1、根据官方建议,实现onlyoffice服务的安装。
2、由于其服务依赖很多组件,官方建议docker安装,安装好后,启动,先看能不能访问到。成功后能够访问到如下页面,说明服务启动成功。

3、选择版本,7.2以下的版本默认不开启jwt访问,但7.2以上默认开启jwt。
4、官方给了java2个demo版本去适配onlyoffice的服务。
1)java spring demo 用了jdk17,功能强大。后台是springboot+前端html
2)java demo 用了jdk8,功能比上面版本少很多,看似不强大,后台是spring+前端jsp。
而且好像适配7.2版本的话是有bug的,已在官网问了很多问题。注意:这个demo里面的version是1.5.1,不知道以后官网还会更新不。下面的内容会详细说。
如果各位的项目需要集成的话,首选java spring demo,目前没测过什么bug。
问题1:docker无法访问主机Ip
前提:如果自身服务和onlyoffice在同一台机器。
若主机开了防火墙,则需要对dokcer里面的ip放行,可进去docker容器查看、需要对这个ip放行
问题2:docker运行时,onlyoffice无法启动组件服务
docker 日志为:Waiting for connection to the localhost host on port 5432
前提:适配各种操作系统,启动的时候,doker run 最好加权限参数,不然导致onlyoffice里面的服务无法启动,这个真的恶心,当时适配国产操作系统一直不行,同样的命令centos和其他liunx系统都行。如果启动不成功,可以试下 docker run --privileged=true
问题3:7.2版本以上java demo版本无法使用秘钥访问。
打开文档页面错误: The document security token is not correctly formed. Please contact your document server administrator
没有通过代码解决,java demo貌似有bug(version:1.5.1),此处只能修改服务器配置,禁用jwt。
二种方式,推荐第二种
1、修改docker里面onlyoffice的文件,路径为 /etc/onlyoffice/documentserver/local.json
将local.json里面 的token下的inbox、outbox、browser值改为false。
"token": { "enable": { "request": { "inbox": false, "outbox": false }, "browser": false },
然后重启下服务。命令:systemctl restart ds-*
2、docker 启动时候,加参数 -e JWT_ENABLED=false
问题4:使用https方式启动onlyoffice,打开文件报错
这里给出完整步骤解决打不开的问题,主要是因为证书不可靠(自己生成的证书)
1、启动命令:sudo docker run -i -t -d -p 80:443 --restart=always onlyoffice/documentserver:7.2
2、进入容器:docker exec -it 容器id /bin/bash
3、进入目录: cd /var/www/onlyoffice/Data
4、创建文件夹: mkdir certs
5、进入certs:cd certs
6、依次执行如下命令:
1)、openssl genrsa -out onlyoffice.key 2048
2)、openssl req -new -key onlyoffice.key -out onlyoffice.csr
3)、openssl x509 -req -days 365 -in onlyoffice.csr -signkey onlyoffice.key -out onlyoffice.crt
4)、openssl dhparam -out dhparam.pem 2048
7、编辑文件 /etc/onlyoffice/documentserver/default.json 修改参数 rejectUnauthorized为false后保存,执行命令supervisorctl restart all
8、退出容器,重启。
总结:
提示:提供1个官网提issue的链接问题,如果在集成的时候遇到问题,可参考。
其他小伙伴如有问题讨论可发私信。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
相关文章
最新发布
- docker全名令解析
- 小华HC32L176KATA单片机最小系统ISP烧录说明
- Windows 下切换 Java 环境太复杂了,我做了个 cli 工具,可以快速安装,切换 Java 版本
- SHP文件与PostGIS数据库Geom字段:WKT和EWKB相互转换SQL
- Spring AI 2.0 GA 倒计时:先别急,来看看 Java AI 框架的另一条路
- HEIC 批量转 JPG - 一键转换苹果 HEIC 格式为 JPG/PNG,保留 EXIF 信息,支持批量处理
- 【php】老旧PHP项目(PHP 5.6)本地环境搭建与踩坑记录
- Vue3 轻量安全滑动拼图验证码:vue-sliding-puzzle 上手全攻略
- 多市场行情时间戳对齐:UTC 存储的夏令时陷阱与数据库设计方案
- 15. 别再硬写提示词了!LangChain ChatPromptTemplate核心实战

