在通常的OA項目中常常會遇到在線處理Office文檔的需求,先下載文件,編輯保存後再選擇文件上傳的方式太過原始,在現在早已經是Office Online的時代,沒有用戶能接受這種蹩腳的操做方式。html
雖然微軟公司也是Office Online的主要推手,經過使用Office 365免費的Office Online應用就能夠一塊兒建立、共享更多內容、實現協做處理 Word 文檔等更多目標,可是微軟的Office Online是一個對內封閉的系統,帳號使用的是微軟本身官方的用戶帳號,文件數據也是交由微軟服務器存儲,不提供對文檔處理流程和內容控制的開發接口,因此目前在OA項目的開發中,在線處理Word文件的主流實現方式仍是使用Word控件(也有稱做Office控件的),但本質上這些控件是瀏覽器頁面中的控件,與視頻網站的flash控件使用相同的開發技術。web
目前市面上支持在線編輯文檔的word插件有不少,並且還有某些不少年前就開始免費的插件。因爲插件技術自身的複雜性和近年來操做系統、瀏覽器環境、Office版本的劇烈變化等因素影響,免費插件早已慘遭淘汰,在付費的插件中比較經常使用的就是PageOffice了,PageOffice封裝了服務器端的Java編程對象,控制客戶端word控件的表現,總的來講接口仍是簡單易用的,好比說在線打開一個word文件,後臺只須要下面幾行代碼:編程
PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request); poCtrl1.setServerPage("poserver.zz"); poCtrl1.setSaveFilePage("savefile.jsp");// 處理文件保存工做 poCtrl1.webOpen("doc/test.doc", OpenModeType.docNormalEdit, "張三");//打開文件
而在頁面中須要出現Word界面的位置插入getHtmlCode方法返回的html代碼便可。瀏覽器
String htmlCode = poCtrl1.getHtmlCode("PageOfficeCtrl1");
PageOffice最新版本提供了兼容全部瀏覽器的解決方案,在支持office文件在線編輯的基礎上還提供了痕跡保留、動態填充、合併文件、提取文檔中數據等功能,總的來講仍是一個不錯的選擇。服務器