【技術教程】如何將文檔編輯器集成至基于Java的Web應用程序

在如今的企業協作場景中,“文檔” 早已不是簡單的文字載體!從項目需求文檔的多人實時修改,到財務報表的在線批注,再到合同草案的版本追溯,用戶越來越需要在 Web 應用內直接完成 “編輯 - 協作 - 存儲” 全流程。

但很多 Java 開發者會遇到一個難題:自研文檔功能成本高、兼容性差,第三方插件又容易出現 “割裂感”,怎么才能讓專業文檔工具和現有 Java Web 系統 “無縫對接”?

?ONLYOFFICE 文檔正是解決這個問題的關鍵。它能輕松嵌入 Java、Python、Node.js 等各類 Web 應用,讓你的系統瞬間擁有企業級文檔處理能力。閱讀本文,了解詳細教程。

關于 ONLYOFFICE 文檔

ONLYOFFICE 文檔是多合一的文檔編輯套件,支持文字、表格、幻燈片、 PDF 和表單的編輯與協作,高度兼容微軟Office格式。易于使用和集成,可以在您的網站、平臺或系統中高效處理多種類型的文檔,實現文件格式間的便捷轉換和無縫協作。

?如果您想要將為自己的系統和平臺集成編輯功能,您可以了解我們的開發者版本:

ONLYOFFICE文檔開發者版:集成至Web應用程序,實現文檔編輯功能

為什么要在 Web 程序中集成文檔編輯器

Java 作為企業級 Web 開發的 “中流砥柱”,廣泛應用于 OA 系統、CRM 平臺、教育管理系統等場景。這些場景下,通過集成 ONLYOFFICE 文檔,你的用戶可以在您的應用中直接編輯和協作處理文檔,而無需切換到其他工具,為您帶來以下顯著優勢:

?1. ?易于集成,提升用戶體驗?

ONLYOFFICE 文檔可以無縫地適應您的網絡應用,支持多種流行的編程語言和開發框架,包括JavaScript、Python、Java、C#等。我們為前端框架提供現成的組件樣本 (Angular, React, Vue 等)。

2. ?多種部署方式?

您可以將 ONLYOFFICE 文檔開發者版集成到您的 SaaS 或本地解決方案中,支持私有化部署和內網環境使用,更好得保護數據安全。此外,您可以在多種安裝選項中選擇部署編輯器,例如Docker、Snap、阿里云鏡像等。

3. ?品牌自定義和擴展性?

我們提供白標產品,您可以更改 logo,自定義編輯界面,選擇顯示或隱藏額外的按鈕,為您的用戶提供更好的品牌體驗。ONLYOFFICE 文檔可以為任何數量的用戶進行擴展,即使您有成千上萬的用戶,也能滿足需求。而且無論是開發文件和內容管理系統、CRM 和電子學習平臺、郵箱和項目管理軟件等,ONLYOFFICE 都可以很好的適應不各種業務場景和工作流程。

了解更多ONLYOFFICE開發者版優勢

實操指南:集成 ONLYOFFICE 到 Java Web

注意:本示例僅用于測試目的以及演示編輯器的功能。在沒有進行適當的代碼修改之前,請勿在您自己的服務器上使用此集成示例。如果您啟用了測試示例,在投入生產環境之前請將其禁用。

重要安全信息

在使用測試示例時,請牢記以下安全方事項:

  • 由于無需授權,存儲不受未經授權訪問的保護。
  • 由于參數是由代碼根據預先安排的腳本生成的,因此不會對鏈接中的參數替換進行檢查。
  • 編輯后保存文件的請求中不會進行數據檢查,因為每個測試示例僅適用于來自 ONLYOFFICE 文檔的請求。
  • 不禁止從其他網站使用測試示例,因為它們旨在與來自其他域的 ONLYOFFICE 文檔進行交互。

一、適用于 Windows 系統

步驟1. 安裝 ONLYOFFICE 文檔

在開始集成前,需要先為自己的系統安裝合適的?ONLYOFFICE 文檔(打包為文檔服務器):

如需了解更多安裝 ONLYOFFICE 文檔和本次集成的示例信息,請查看詳細指南。

步驟2.下載用于編輯器集成的 Java 代碼

下載代碼包?Java 示例,解壓到本地。

在?src/main/resources/settings.properties?文件中指定編輯器安裝的路徑和存儲文件夾的路徑:

storage-folder = app_data
files.docservice.url.site=https://documentserver/

其中?documentserver?是安裝了 ONLYOFFICE 文檔的服務器的名稱,storage-folder?是創建和存儲文件的路徑。您可以設置絕對路徑。例如,D:\\folder。請注意,在 Windows 操作系統上,雙反斜杠必須用作分隔符。

如果要試驗編輯器配置,請修改?src/main/webapp/editor.jsp?文件中的參數。

步驟 3. 安裝 Apache Tomcat 的 Java 版本

要運行 Java 示例代碼,請安裝適用于您的操作系統和 Web 服務器?Apache Tomcat?的 Java 版本:

  • Java(從?Oracle 官網下載);
  • Apache Tomcat:9.0.x 版(從官網下載)。

步驟 4. 運行 Apache Tomcat

1. 在 Windows 上安裝 Java 后,將?JAVA_HOME?環境變量設置為指向 Java 安裝目錄。

找出 Java 的安裝位置。如果您在安裝過程中沒有更改路徑,它將是這樣的:

C:\Program Files\Java\jdk1.8.0_65

在?Windows 7?中,右鍵單擊我的電腦并選擇屬性,然后單擊高級

在?Windows 8中,進入控制面板并選擇系統,然后單擊高級系統設置

單擊環境變量按鈕。

系統變量,單擊新建

變量名稱字段中,如果您安裝了JDK(Java 開發工具包),請輸入?JAVA_HOME;如果您安裝了?JRE(Java 運行時環境),請輸入JRE_HOME

變量值字段中,輸入您的?JDK?或?JRE?安裝路徑,例如?C:\Program Files\Java\jdk1.8.0_65

Add new environment variable

檢查命令提示符中的?echo?命令是否成功創建變量:

echo %JAVA_HOME%

2. 運行命令提示符更改?Apache Tomcat?安裝目錄的當前目錄:

cd /d C:\Apache Tomcat\apache-tomcat-7.0.67\bin

3. 使用?startup.bat?腳本啟動 Apache Tomcat:

startup.bat

您將看到顯示的新?Tomcat?控制臺窗口,其中提供有關 Tomcat 啟動的信息和消息:

Tomcat console window

使用 Web 瀏覽器中的地址測試 Tomcat 安裝:

http://localhost:8080

如果一切正確,您將在瀏覽器中看到 Tomcat 網頁,如下所示。

步驟 5. 配置 JWT

打開?src/main/resouces/settings.properties?文件,并與 ONLYOFFICE 文檔指定相同密鑰?以啟用 JWT:

files.docservice.secret=secret

步驟 6. 運行 Java 代碼

1. 通過單擊?Manager App:?打開 Tomcat Web Application Manager:

Manager app

2. Tomcat Web Application Manager 將請求?username?和?password:

Sign in to Tomcat app

在 Apache Tomcat 安裝文件夾中的?tomcat-users.xml?文件中指定用戶數據。定義?manager-gui?用戶角色,指定?user name?和?password?的值:

<tomcat-users><role rolename="manager-gui"/><user username="tomcat" password="tomcat" roles="manager-gui"/>
</tomcat-users>

3. 在 Tomcat Web Application Manager中上傳 Java 項目。為此,單擊?WAR file to deploy?部分中的?Choose File?并在 Java 項目文件夾中找到*.war* 文件,然后單擊?Deploy

Deploy WAR file

Choose WAR file

4. 您將在?Application 列表中看到該項目:

Application list

5. 單擊應用程序名來運行它。

步驟 7. 檢查可訪問性

如果示例和 ONLYOFFICE 文檔安裝在不同的計算機上,請確保安裝了示例的服務器可以訪問您指定地址的 ONLYOFFICE 文檔,而不是配置文件中的?documentserver。確保 ONLYOFFICE 文檔能夠訪問安裝了示例的服務器,該示例使用您在配置文件中 指定的地址而不是?example.com?安裝。

二、適用于 Linux 系統

步驟 1. 安裝 ONLYOFFICE 文檔

下載并安裝 ONLYOFFICE 文檔(打包為文檔服務器):

獲取 ONLYOFFICE 文檔

請參閱詳細指南以了解如何安裝適用于Linux的 ONLYOFFICE 文檔。

步驟 2. 安裝的先決條件及使用編輯器運行網站

1. 按照此處說明安裝?Java

2. 下載包含 Java 示例的存檔并解壓縮存檔:

wget https://github.com/ONLYOFFICE/document-server-integration/releases/latest/download/Java.Example.zip
unzip Java.Example.zip

3. 將當前目錄更改為項目目錄:

cd Java\ Example/

4. 編輯?src/main/resources/settings.properties?配置文件。指定安裝了 ONLYOFFICE 文檔的本地服務器的名稱。

nano src/main/resources/settings.properties

編輯以下行:

storage-folder = app_data
files.docservice.url.site=https://documentserver/

其中?documentserver?是安裝了 ONLYOFFICE 文檔的服務器的名稱,storage-folder?是創建和存儲文件的路徑。請注意,您必須具有對該文件夾的讀取和寫入權限。如果您沒有它們,請使用下一個命令:

sudo chmod -R ugo+rw /{path}

與 ONLYOFFICE 文檔指定相同密鑰以啟用 JWT:

files.docservice.secret=secret

5. 安裝?Maven:

sudo apt-get install maven

6.構建:

mvn package

7. 使用管理頁面安裝?Tomcat

sudo apt-get install tomcat8 tomcat8-admin

8. 在 Tomcat 上配置管理員用戶:

sudo nano /var/lib/tomcat8/conf/tomcat-users.xml

插入以下行:

<role rolename="manager-gui"/>
<user username="USERNAME" password="PASSWORD" roles="manager-gui"/>

其中?USERNAME?和?PASSWORD?是您自己的憑據數據。

重啟 Tomcat:

systemctl restart tomcat8

9. 使用管理員用戶憑據在瀏覽器中打開 Tomcat 管理頁面:

http://localhost:8080/manager/html

10. 從?target/OnlineEditorsExampleJava-1.0.war?選擇要上傳的 WAR 文件。

11. 使用地址在瀏覽器中查看結果:

http://localhost:8080/OnlineEditorsExampleJava-1.0/

步驟 3. 檢查可訪問性

如果示例和ONLYOFFICE 文檔安裝在不同的計算機上,請確保安裝了示例的服務器可以訪問您指定地址的 ONLYOFFICE 文檔,而不是配置文件中的?documentserver。確保 ONLYOFFICE 文檔能夠訪問安裝了示例的服務器,該示例使用您在配置文件中 指定的地址而不是?example.com?安裝。

三、適用于 Docker 系統

步驟 1. 安裝 ONLYOFFICE 文檔

下載并安裝 ONLYOFFICE 文檔,了解如何安裝適用于Docker的 ONLYOFFICE 文檔。

步驟 2. 安裝先決條件并使用編輯器運行網站

1. 按照此處說明安裝?Java

2. 下載包含 Java 示例的存檔并解壓存檔:

wget https://github.com/ONLYOFFICE/document-server-integration/releases/latest/download/Java.Example.zip
unzip Java.Example.zip

3. 將當前目錄更改為項目目錄:

cd Java\ Example/

4. 編輯?src/main/resources/settings.properties?配置文件。指定安裝了 ONLYOFFICE 文檔的本地服務器的名稱:

nano src/main/resources/settings.properties

編輯以下行:

storage-folder = app_data
files.docservice.url.site=https://documentserver/

其中?documentserver?是安裝了 ONLYOFFICE 文檔的服務器的名稱,storage-folder?是創建和存儲文件的路徑。

與 ONLYOFFICE 文檔指定相同密鑰以啟用 JWT:

files.docservice.secret=secret

5. 在 Java 示例目錄中運行下一個命令:

docker-compose up

6. 之后,所有的?bin?文件將被傳遞到?./target?文件夾。

步驟 3. 檢查可訪問性

如果示例和 ONLYOFFICE 文檔安裝在不同的計算機上,請確保安裝了示例的服務器可以使用您在配置文件中指定的地址(而不是?documentserver?)訪問ONLYOFFICE 文檔。確保 ONLYOFFICE 文檔可以訪問安裝了示例的服務器,該示例的地址是您在配置文件中指定的地址,而不是?example.com

ONLYOFFICE 文檔的特性,讓你可以根據業務需求自定義界面、擴展功能。現在就動手試試,讓你的 Java Web 應用擁有 “開箱即用” 的專業文檔協作能力吧!

希望本文能為您在文檔編輯器集成與開發的應用中提供全面的指導和參考。如果在集成過程中遇到問題,歡迎在評論區留言討論。

?相關鏈接

更多文檔 API 語言示例

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/921706.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/921706.shtml
英文地址,請注明出處:http://en.pswp.cn/news/921706.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

多模態大模型Keye-VL-1.5發布!視頻理解能力更強!

近日&#xff0c;快手正式發布了多模態大語言模型Keye-VL-1.5-8B。 與之前的版本相比&#xff0c;Keye-VL-1.5的綜合性能實現顯著提升&#xff0c;尤其在基礎視覺理解能力方面&#xff0c;包括視覺元素識別、推理能力以及對時序信息的理—表現尤為突出。Keye-VL-1.5在同等規模…

洗完頭后根據個人需求選擇合適的自然風干 | 電吹風 (在保護發質的同時,也能兼顧到生活的便利和舒適。)

文章目錄 引言 I 選合適的方式讓頭發變干 時間充裕,不需要做造型,選擇自然風干 使用電吹風,比較推薦的做法 II 自然風干 天冷可能刺激頭皮 III 電吹風吹干 容易造型 影響頭皮健康 損傷發質 科普 頭皮的微觀結構 頭發絲 引言 吹風吹干:容易造型,但損傷發質、影響頭皮健康 …

GPS汽車限速器有哪些功能?主要運用在哪里?

GPS 汽車限速器是一種結合全球衛星定位&#xff08;GPS&#xff09;技術、車速采集技術與車輛控制 / 預警邏輯的設備&#xff0c;核心目標是通過技術手段限制車輛行駛速度&#xff0c;減少超速引發的交通事故&#xff0c;并輔助車輛管理。其功能與應用場景高度匹配不同用戶的 “…

Python從入門到精通_01_python基礎

1 源代碼格式在python文件的第一行&#xff0c;輸入以下語句&#xff0c;可以將python文件的編碼格式設置為utf-8#-*- coding:utf-8 -*-2 輸入輸出input():輸入&#xff0c;無論輸入的是什么類型數據&#xff0c;最后都是字符串類型print(*args, sep , end\n, fileNone, flushF…

使用CI/CD部署項目(前端Nextjs)

寫在前面&#xff1a;在github上使用CI/CD部署Nextjs項目&#xff0c;具體配置可以按照自己的實際的修改 這是我的項目配置&#xff0c;僅供參考 后端項目可以參考&#xff1a;使用CI/CD部署后端項目 正文開始 項目名&#xff08;PROJECT_NAME&#xff09;- CI/CD 部署指南…

Java全棧工程師面試實錄:從基礎到實戰的全面解析

Java全棧工程師面試實錄&#xff1a;從基礎到實戰的全面解析 面試官&#xff1a;李明&#xff08;資深技術負責人&#xff09; 應聘者&#xff1a;張宇&#xff08;28歲&#xff0c;碩士學歷&#xff0c;5年開發經驗&#xff09; 第一輪&#xff1a;Java語言與JVM基礎 李明&…

C#中解析XML時遇到注釋節點報錯

在C#中解析XML時遇到注釋節點報錯的問題&#xff0c;這是因為XML注釋節點&#xff08;<!-- -->&#xff09;是特殊的節點類型。當遍歷XML節點時&#xff0c;注釋節點也會被包含在內&#xff0c;但它們不能像普通元素節點那樣處理。 解決方案 方法1&#xff1a;跳過注釋節…

9.3深度循環神經網絡

目前為止&#xff0c;只討論了具有一個單向隱藏層的循環神經網絡&#xff0c;其中隱變量和觀測值域具體的函數形式的交互方式是相當隨意的。只要交互類型建模具有足夠的靈活性&#xff0c;不是一個單問題。然而&#xff0c;對一個單層來說&#xff0c;可能具有相當的挑戰性。之…

CSS in JS 的演進:Styled Components, Emotion 等的深度對比與技術選型指引

CSS in JS 的演進&#xff1a;Styled Components, Emotion 等的深度對比與技術選型指引在現代前端開發中&#xff0c;組件化思維已成為主流&#xff0c;而如何科學、高效地管理組件的樣式&#xff0c;也隨之成為了一個重要議題。CSS in JS&#xff08;JS中的CSS&#xff09;應運…

【正則表達式】 正則表達式的分組和引用

?? 個人主頁:(時光煮雨) ?? 高質量專欄:vulnhub靶機滲透測試 ?? 希望得到您的訂閱和支持~ ?? 創作高質量博文(平均質量分95+),分享更多關于網絡安全、Python領域的優質內容!(希望得到您的關注~) ??目錄?? 前言 ??一、基本語法 ??二、分組類型 ??2.1.…

Grafana 導入儀表盤失敗:從日志排查到解決 max\_allowed\_packet 問題

問題背景 近期在為項目搭建一套基于 Prometheus 和 Grafana 的可觀測性體系。在完成基礎部署后&#xff0c;我準備導入一個功能相對復雜的官方儀表盤模板&#xff0c;以便快速監控各項指標。然而&#xff0c;當上傳儀表盤的 JSON 文件并點擊保存時&#xff0c;Grafana 界面卻反…

java對接物聯網設備(一)——使用okhttp網絡工具框架對接標準API接口

當前無論是在互聯網領域&#xff0c;還是物聯網項目下&#xff0c;亦或者各類應用類軟件&#xff0c;基于http標準接口的對接是目前市面上最常見也是最簡單的數據交互方式之一&#xff0c;甚至可以說是最流行的&#xff0c;因為它不依賴的各種插件或者服務。 開發者或者提供服…

版本管理系統與平臺(權威資料核對、深入解析、行業選型與國產平臺補充)

本文是一篇基于公開權威資料&#xff08;官方文檔、產品頁、廠商技術文章與技術社區討論&#xff09;重新檢索、核對后撰寫的詳盡博文。內容覆蓋&#xff1a;版本控制基礎、主流 VCS 工具深度比較、常見托管/協作平臺&#xff08;含中國本土平臺&#xff1a;Gitee / GitCode / …

計算機畢設選題:基于Python+Django的B站數據分析系統的設計與實現【源碼+文檔+調試】

精彩專欄推薦訂閱&#xff1a;在 下方專欄&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f496;&#x1f525;作者主頁&#xff1a;計算機畢設木哥&#x1f525; &#x1f496; 文章目錄 一、項目介紹二…

Easy ES技術詳解

從Java代碼示例到高級特性 框架介紹 Easy-Es 是一款以 “簡化 Elasticsearch 操作的 ORM 框架” 為核心定位的開源工具&#xff0c;旨在通過低代碼設計降低 Elasticsearch 的使用門檻。作為國內 Top1 Elasticsearch 搜索引擎框架&#xff0c;其最顯著的優勢在于大幅縮減代碼量…

【51單片機】【protues仿真】基于51單片機停車場的車位管理系統

目錄 一、主要功能 二、使用步驟 三、硬件資源 四、軟件設計 五、實驗現象 一、主要功能 1、LCD1602液晶顯示 2、統計并顯示停車場現有車輛數和已停放過車輛數 3、按鍵設置總車位數以及剩余車位數 4、統計并顯示累計駛入和累計駛出車輛數 5、用16個LED燈模擬停車位 6、車…

【Python】S1 基礎篇 P4 if 語句指南

目錄簡單示例條件測試檢查是否相等與不等檢查多個條件檢查特定的值是否在/不在列表中布爾表達式if語句簡單的if語句if-else語句if-elif-else語句使用if語句處理列表檢查特殊元素確定列表非空使用多個列表總結if 語句是Python編程中最基本也是最重要的控制結構之一。它允許程序根…

【實戰中提升自己】內網安全部署之STP的安全技術部署

1 1拓撲 「模擬器、工具合集」復制整段內容 鏈接&#xff1a;https://docs.qq.com/sheet/DV0xxTmFDRFVoY1dQ?tab7ulgil1 STP的安全技術部署 說明&#xff1a;為什么需要注意STP的安全呢&#xff0c;在二層中其實存在很多不安全的因素&#xff0c;物理上…

GEM5學習(5): ARM 架構功耗仿真

運行腳本基于gem5提供的腳本&#xff0c;啟動功耗仿真。實際工作中應該不會用gem5進行功耗的仿真吧&#xff0c;Cadence和Synopsys好像都有配套的的功耗建模工具。事先要配置好 IMG_ROOT的環境變量./build/ARM/gem5.opt configs/example/arm/fs_power.py \--caches \--bootl…

【Python基礎】 19 Rust 與 Python if 語句對比筆記

一、基本語法對比 Rust if 語句 // 基本形式 let number 7;if number < 5 {println!("condition was true"); } else {println!("condition was false"); }// 多條件 else if if number % 4 0 {println!("number is divisible by 4"); } el…