在這一節中我們將學習一下JODConverter自帶的一個Web應用了解如何在Web應用中運行OpenOffice文檔轉換服務來轉換Office文檔
在上一節中我們從SVN資源庫中下載了兩個應用其中有一個是jodconvertersamplewebapp這個應用就是以Web方式運行OpenOffice文檔轉換服務的咱們來打開看一下
這就是這個應用的目錄結構包含三個java文件分別是一個處理轉換請求的Servlet一個WebappContext從名字看應該是應用的一些上下文信息還有一個Listener另外還有一個文檔格式的JS文件與一個jsp文件很簡單的一個應用簡單也好我們可以比較容易明白
咱們首先打開webxml文件對於一個Web應用來說webxml文件就是這個應用的描述一個應用包含了一些什麼樣的組件一些什麼樣的配置信息都會在webxml文件裡面體現然後我們就可以順籐摸瓜了解這個應用的一切
從上圖可以看到這個webxml文件主要包含三個方面的內容一個是WebApp的上下文參數第二個是配置了一個偵聽器第三個就是處理轉換請求的Servlet配置第一個部分的代碼現在是注釋的咱們從第二個Linstener開始了解打開這個偵聽器的源碼
這個的代碼更簡單就是實現了偵聽器的兩個方法init方法和destory方法並且分別調用了WebappContext類的init方法和destory方法並且把當前ServletContext當作參數傳遞過去可以知道重點在WebappContext類裡面打開WebappContext類裡邊主要有四個方法
咱們一個一個方法來看
代碼主要有兩部分第一部分是初始化文件上傳的參數設置最大允許上傳的文件大小第二部分根據webxml文件設置的OpenOffice相關參數初始化OpenOffice文檔轉換服務配置DefaultOfficeManagerConfiguration並且構建一個OfficeManager和DocumentConverter的實例這個兩個類一個是用來根據DefaultOfficeManagerConfiguration啟動OpenOffice文檔轉換服務一個用來執行轉換任務
下面的幾個方法相對都比較簡單
根據注釋其實已經很清晰了這個類和WebappContextListener兩個類的作用就是在Web應用啟動時啟動OpenOffice文檔轉換服務在應用關閉時停止OpenOffice文檔轉換服務剩下的那個類就是執行文檔轉換的主體了咱們接著看
四個方法下面的三個方法咱們可以忽略不計不同的文件上傳組件獲取文件的方式不一樣自己去了解一下
主要是doPost()方法
第一部分
第二部分
在這個方法裡面主要起作用的就是這個兩個部分其實也挺簡單的因為所有的操作都已經封裝好了我們只需要調用就可以了下面咱們把這個應用部署到Tomcat裡面來體驗一下
啟動Tomcat訪問應用
很簡單的一個頁面咱們點擊浏覽選擇一個Office文件然後點擊Convert!
網頁彈出了一個文件下載框咱們點擊打開或者保存看一個PDF文件就轉換好了簡單吧
這一節就先到這裡下一節給大家介紹FlexPaper組件
From:http://tw.wingwit.com/Article/program/Java/hx/201311/25970.html