本文由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.amponlyoffice-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.warshare.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 集成
文章: 标签:
浏览所有标签