本文由AI翻译

Alfresco

关于 ONLYOFFICE 与 Alfresco 的集成

ONLYOFFICE 提供了官方连接器,将 ONLYOFFICE文档 与 Alfresco 集成,以便在文档库中创建、编辑和转换办公文档。您可以从官方 Alfresco 附加组件目录 或 ONLYOFFICE 的 GitHub 页面 下载 ONLYOFFICE 连接器。

如需详细了解 ONLYOFFICE 与 Alfresco 模块及其工作原理,请访问我们的 API 文档。
主要功能
  • 创建、编辑和查看文本文件、电子表格和演示文稿。
  • 文件转换。
  • 实时协作编辑文档:两种协作模式(快速和严格)、修订模式、评论及内置聊天功能。
  • 支持 JWT,保障您的数据传输安全,只有拥有相应权限的用户才能访问您的文档。
支持的格式
  • 用于创建、编辑和查看:DOCX、PPTX、XLSX
  • 用于表单处理:PDF
  • 用于转换:ODT、ODP、ODS、DOC、XLS、PPT、RTF
  • 通过转换为 OOXML 格式进行编辑:ODP、ODS、ODT、RTF、CSV、TXT
  • 仅供查看:PDF
8.1.0 版本新功能

新增

  • 编辑器中新增事件支持:onRequestReferenceData、onRequestReferenceSource、onRequestOpen

变更

  • 修复忽略 SSL 证书设置的错误

完整更新日志请见 这里。

将 ONLYOFFICE文档 连接到 Alfresco Share

要求
  • ONLYOFFICE Document Server v7.1(服务器或云端版本)或更高版本

    您需要一个 ONLYOFFICE文档 实例,该实例必须能被 Alfresco 和任何终端客户端访问并连接,且必须能够直接向 Alfresco 发送 POST 请求。

    请参考官方 文档页面 了解有关 ONLYOFFICE文档 安装的更多信息。
  • Alfresco 版本:7.4、23、25
  • ONLYOFFICE Connector 7.0.0 for Alfresco

安装 ONLYOFFICE 与 Alfresco 模块包

最新的编译包文件可在 GitHub 获取。您需要 onlyoffice-integration-repo.amp 和 onlyoffice-integration-share.amp 文件。

通过编译包安装
  1. 使用上述链接下载编译好的 .amp 包文件。
  2. 在服务器上创建以下目录:
    sudo mkdir -p /var/opt/alfresco/amps
    sudo mkdir -p /var/opt/alfresco/amps_share
  3. 将编译好的 .amp 包文件移动到新建目录中:
    • /var/opt/alfresco/amps 用于 onlyoffice-integration-repo.amp
    • /var/opt/alfresco/amps_share 用于 onlyoffice-integration-share.amp
  4. 使用以下任一方法停止 Alfresco 服务:
    1. 方法 1:
      sudo systemctl stop alfresco
      确保 所有 Alfresco 服务均已停止。它们必须依次停止,最后停止的应为名称中包含 content 的服务,例如:
      alfresco-tengine-aio.service.service
      alfresco-search.service
      alfresco-content-monitored-startup.service
      alfresco-content.service
    2. 方法 2:
      sudo ./alfresco.sh stop

      请注意,该方法仅在您的版本包含该脚本时有效,且并非所有版本均包含。

  5. 查找 alfresco.war 和 share.war 文件的路径,例如:
    sudo find / -type f -iname '*alfresco.war*' 2>/dev/null
  6. 查找 alfresco-mmt.jar 工具文件的路径。
  7. 安装插件的 repo 组件:
    java -jar /PATH/alfresco-mmt.jar install \
    /PATH/onlyoffice-integration-repo.amp \
    /PATH/alfresco.war \
    -verbose -nobackup -force
    
    其中 PATH 代表之前找到的文件路径。请注意,命令中每个 PATH 的值可能不同。
    您可能需要更新 Java 以部署 alfresco-mmt.jar:
    sudo apt update
    sudo apt install openjdk-17-jre-headless
    
  8. 安装插件的 share 组件:
    java -jar /PATH/alfresco-mmt.jar install \
    /PATH/onlyoffice-integration-share.amp \
    /PATH/share.war \
    -verbose -nobackup -force
    
    其中 PATH 代表之前找到的文件路径。请注意,命令中每个 PATH 的值可能不同。
  9. 删除 Alfresco 的 Tomcat 目录以便重启时重新编译:
    sudo rm -rf /var/opt/alfresco/tomcat/webapps/alfresco
    sudo rm -rf /var/opt/alfresco/tomcat/webapps/share
    
  10. 使用以下任一方法重启 Alfresco:
    1. sudo systemctl start alfresco
    2. sudo ./alfresco.sh start

    请确保启动服务的顺序与停止时的顺序相同。

在 Ubuntu 上安装

要在 Ubuntu 24.04 上开始使用 ONLYOFFICE文档 与 Alfresco,需执行以下步骤:

  1. 将编译好的 *.amp 包分别上传至对应的 Alfresco 安装目录:
    • 从 onlyoffice-alfresco/repo/target/ 到 /usr/local/tomcat/amps/(Alfresco 仓库),
    • 从 onlyoffice-alfresco/share/target/ 到 /usr/local/tomcat/amps_share/(Share)。
  2. 您也可以从 这里 下载已编译的包文件,并放置到相应目录。

    使用 模块管理工具 (MMT) 安装模块,运行以下命令:

    • Alfresco
      java -jar /usr/local/tomcat/alfresco-mmt/alfresco-mmt.jar install /usr/local/tomcat/amps/onlyoffice-integration-repo.amp /usr/local/tomcat/webapps/alfresco
    • Share
      java -jar /usr/local/tomcat/alfresco-mmt/alfresco-mmt.jar install /usr/local/tomcat/amps_share/onlyoffice-integration-share.amp /usr/local/tomcat/webapps/share

    有关 MMT 的更多详情,请参阅 Alfresco 安装指南。

  3. 确保 Document Server 能够向 Alfresco 发送 POST 请求。

    您可能需要修改 alfresco-global.properties 中的以下内容,或者通过配置页面设置:

        
        alfresco.host=<hostname>
        alfresco.port=443
        alfresco.protocol=https
        
        share.host=<hostname>
        share.port=443
        share.protocol=https
        
        
  4. 重启 Alfresco:
    sudo ./alfresco.sh stop 
        sudo ./alfresco.sh start

您可以在 Alfresco 的管理员工具中通过 /share/page/console/admin-console/module-package 检查模块。

编译 ONLYOFFICE Alfresco 模块包

如果您计划自行编译 ONLYOFFICE Alfresco 模块包(例如,编辑源码后再编译),请按以下步骤操作:

  1. 需要最新稳定版的 Oracle Java 以成功构建。如果尚未安装,请使用以下命令安装 Oracle Java 8:
    sudo apt-get update 
                                     sudo apt-get install openjdk-8-jdk
  2. 安装最新版 Maven。安装过程请参阅 官方 Maven 指南。
  3. 下载 ONLYOFFICE Alfresco 模块包源码:
    git clone https://github.com/ONLYOFFICE/onlyoffice-alfresco.git
  4. 获取子模块:
    git submodule update --init --recursive
  5. 在 repo 和 share 目录中编译包:
    cd onlyoffice-alfresco && mvn clean install

另一种构建 ONLYOFFICE Alfresco 模块包的方法是使用 docker-compose 文件。

在项目目录下运行以下命令:

docker-compose up
配置 ONLYOFFICE 与 Alfresco 模块包

进入 Alfresco 管理控制台。打开 http://<alfrescohost>/alfresco/s/onlyoffice/onlyoffice-config 并填写以下参数。

设置项:

  • 文档编辑服务地址 - 指定文档编辑服务安装的 URL 地址。
    重要 ONLYOFFICE文档 的地址必须能被 Alfresco 访问,同时 Alfresco 的地址也必须能被 ONLYOFFICE文档 访问。
  • 密钥 - 指定用于签名数据的密钥。
    从 ONLYOFFICE文档 v7.2 开始,JWT 默认启用,且密钥自动生成。您需要在 Alfresco 端也启用此功能:在 ONLYOFFICE文档 配置文件中找到您的密钥,并在连接器设置中填写相同的密钥。详情请参见本文的 为 ONLYOFFICE 与 Alfresco 集成启用 JWT 部分。

高级服务器设置:

  • Alfresco 服务器内部请求的文档编辑服务地址 - 指定 Alfresco 服务器访问文档编辑服务时使用的地址。
  • 文档编辑服务内部请求的 Alfresco 服务器地址 - 指定文档编辑服务访问 Alfresco 服务器时使用的地址。
  • 授权头(留空则使用默认头) - ONLYOFFICE 使用的 JWT 授权头为 Authorization。如果该头与您的环境冲突,可更改为自定义头。

常规设置:

  • 忽略 SSL 证书 - 关闭 SSL。
  • 启用强制保存 - 点击保存按钮后,直接将文档更改保存到 Alfresco 存储(若禁用,文档将保存在编辑器缓存中,直到关闭文档)。
  • 转换后以新版本保存 docx、xlsx、pptx - 若禁用,将创建单独文件并放置于同一文件夹。
  • 打开文件时通过转换为 OOXML 格式进行编辑 - 允许管理员选择通过转换为 OOXML 格式编辑的文档格式。
  • 关闭编辑器后将文档保存为次要版本 - 决定关闭时文档版本是保存为主要版本(2.0、3.0)还是编辑中保存为次要版本(1.1、1.2),初始版本为 1.0。
您也可以在 alfresco-global.properties 中添加 onlyoffice.url。通过设置页面配置将覆盖 alfresco-global.properties 中的配置。
Settings_menu Settings_menu
工作原理

ONLYOFFICE 集成遵循此处文档化的 API:链接。

  1. 用户在 Alfresco Share 中导航至文档并选择 在 ONLYOFFICE 中编辑 菜单选项。
  2. Alfresco Share 向仓库端发送请求(URL 格式为:/parashift/onlyoffice/prepare?nodeRef={nodeRef})。
  3. Alfresco 仓库端为 Share 准备一个包含以下属性的 JSON 对象:
    • url - ONLYOFFICE文档 用于下载文档的 URL(包含当前用户的 alf_ticket);
    • callbackUrl - ONLYOFFICE文档 用于通知文档编辑状态的 URL;
    • onlyofficeUrl - 客户端响应 ONLYOFFICE文档 的 URL(由 onlyoffice.url 属性提供);
    • key - UUID+修改时间戳,指示 ONLYOFFICE文档 是否需要重新下载文档;
    • title - 文档标题(名称)。
  4. Alfresco Share 使用该对象并从 freemarker 模板构建页面,填充所有值以便客户端浏览器加载编辑器。
  5. 客户端浏览器请求 ONLYOFFICE文档 的 JavaScript 库,并向 ONLYOFFICE文档 发送带有上述属性的 DocEditor 配置。
  6. 随后 ONLYOFFICE文档 从 Alfresco 下载文档,用户开始编辑。
  7. ONLYOFFICE文档 向 callbackUrl 发送 POST 请求,通知 Alfresco 用户正在编辑文档。
  8. Alfresco 锁定文档,但仍允许具有写权限的其他用户通过保留操作与 ONLYOFFICE文档 实时协作。
  9. 所有用户和客户端浏览器完成编辑后,关闭编辑窗口。
  10. 经过 10 秒 无操作后,ONLYOFFICE文档 向 callbackUrl 发送 POST,通知 Alfresco 客户端已完成编辑并关闭文档。
  11. Alfresco 下载文档新版本,替换旧版本。
为 ONLYOFFICE 与 Alfresco 集成启用 JWT

为防止文档被未授权访问,ONLYOFFICE 编辑器使用 JSON Web Token (JWT)。令牌 在文档编辑器初始化时及 ONLYOFFICE文档 内部服务间命令交换时添加。密钥 用于签名 JWT 并在请求 ONLYOFFICE文档 时验证令牌。

从 ONLYOFFICE文档 v7.2 开始,JWT 默认启用,密钥自动生成。您需在 ONLYOFFICE文档 配置文件 中找到密钥,并在连接器设置中填写相同密钥。

步骤 1:在 ONLYOFFICE文档 配置文件 中找到密钥

  1. 使用任意文本编辑器打开 local.json 文件。
    • Linux 路径 - /etc/onlyoffice/documentserver/local.json
    • Windows 路径 - %ProgramFiles%\ONLYOFFICE\DocumentServer\config\local.json
    • Docker - 使用 docker exec -it <containerID> bash 命令进入 ONLYOFFICE文档 容器,打开 /etc/onlyoffice/documentserver/local.json

      或者,您可以使用以下命令在不打开 local.json 的情况下查找默认密钥:

      sudo docker exec <containerID> /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'

    local.json 文件示例如下:

    {
      "services": {
        "CoAuthoring": {
          "token": {
            "enable": {
              "request": {
                "inbox": true,
                "outbox": true
              },
              "browser": true
            }
          },
          "secret": {
            "inbox": {
              "string": "yoursecret"
            },
            "outbox": {
              "string": "yoursecret"
            },
            "session": {
              "string": "yoursecret"
            }
          }
        }
      }
    }
  2. 以上三个部分的 true 值表示启用令牌验证。
    • services.CoAuthoring.token.enable.browser
    • services.CoAuthoring.token.enable.request.inbox
    • services.CoAuthoring.token.enable.request.outbox
  3. 自动生成的密钥在三个部分中指定。您可以用自己的密钥替换默认值,且三个部分的密钥必须相同。
    • services.CoAuthoring.secret.inbox.string
    • services.CoAuthoring.secret.outbox.string
    • services.CoAuthoring.secret.session.string
  4. 修改后保存并重启服务以使配置生效。
    supervisorctl restart all

步骤 2:在连接器设置中填写相同的密钥

在连接器设置中,将相同的密钥填写到 密钥 字段,并保存设置。

连接到 ONLYOFFICE文档 演示服务器

从 ONLYOFFICE 连接器 5.0.0 版本 开始,您可以在 Alfresco 内尝试 ONLYOFFICE 在线编辑器,无需安装 ONLYOFFICE文档。

要启用连接,请勾选 连接到演示 ONLYOFFICE 文档服务器 复选框,然后点击 保存 按钮。

重要这是一个公开测试服务器,服务期限为 30 天。请勿在此处共享敏感数据。

开始在 Alfresco 中使用 ONLYOFFICE文档

要 创建 文档:

  1. 打开您想创建文档的文件夹。
  2. 点击 创建... 按钮。
  3. 选择您想创建的文件类型:文档、电子表格或演示文稿。
new_menu new_menu

要 编辑或查看 文档:

  1. 找到所需文档。
  2. 点击 在 ONLYOFFICE 中编辑 按钮。
edit_menu edit_menu

要 将非 XML 文档转换为 XML 格式(DOCX、XLSX 或 PPTX):

  1. 找到所需文档。
  2. 点击 使用 ONLYOFFICE 转换 按钮。

文档将自动转换为对应的 XML 格式,转换后的文件保存在同一文件夹。您还可以为文件夹配置自动转换规则。有关规则配置的更多信息,请参阅 官方 Alfresco 文档。

convert_menu convert_menu

要 下载 文件为所需格式:

  1. 找到所需文件。
  2. 点击 另存为... 按钮,选择所需格式。
download_menu download_menu

查看 文件修改历史:

  1. 点击文件名或图标,打开文件详情标签页。
  2. 在右侧面板找到 版本历史 标签。
  3. 可用部分包括:最新版本 和 旧版本。文件的修改内容将被高亮显示。
  4. 要上传新版本,点击右上角对应图标。
  5. 快速查看当前文件版本,将鼠标悬停在文件上,版本号会显示在文件名右侧,例如 。

properties

或者

  1. 在编辑器中打开 文件 标签。
  2. 选择菜单中的 版本历史 选项。

在文档编辑器中 新建 文件:

  1. 打开 文件 标签。
  2. 点击 新建 选项。

将打开一个新的 .docx 文件标签页。

创建 自定义模板:

  1. 以创建者身份登录 Alfresco 门户的管理员账号。
  2. 进入 我的文件 -> 数据字典 -> 节点模板。
  3. 添加支持格式的自定义模板:.docx、.xlsx、.pptx。
create_template create_template

从 模板 创建文档:

  1. 打开想要创建文档的文件夹。
  2. 点击 创建... 按钮。
  3. 选择 从模板创建文档 选项,选择可用模板之一。
    create_from_template create_from_template

    或者

  1. 在编辑器中打开 文件 标签。
  2. 点击 新建... 选项。
  3. 选择所需模板。
    create_from_template_editor create_from_template_editor

如需了解如何比较存储中的文件,请参阅 本文。

compare_files compare_files

如需了解如何使用存储中的邮件合并,请参阅 本文。

mail_merge mail_merge

如需了解如何从存储插入图片,请参阅 本文。

insert_images insert_images

如需了解如何在文档编辑器中将文档标记为收藏,请参阅 本文。

mark_fav mark_fav
如需了解常见问题及解决方案,请访问我们的 故障排除指南。

观看视频

如何将 ONLYOFFICE 与 Alfresco Share 集成
文章: 标签:
浏览所有标签