環境
01. 系統:RedHat Enterprise Linux v3
02. WEB Server:Tomcat 5.5.7 (patch 5.5.9)
03. JAVA:J2SDK 1.4.2_09
04. Database:Oracle 9i
套件
01. Roller
檔案:roller-src-1.2.tar.gz
下載路徑:
https://roller.dev.java.net/files/documents/190/16701/
roller-src-1.2.tar.gz
檔案:roller-tools-1.2.tar.gz
下載路徑:
https://roller.dev.java.net/files/documents/190/16699/
roller-tools-1.2.tar.gz
步驟
因為 oracle 資料庫的關係,我們下載原始檔下來,重新 complier。
01. mv *.tar.gz /home
把 roller-src-1.2.tar.gz、roller-tools-1.2.tar.gz,移到 /home 中。
02. tar zxvf roller-src-1.2.tar.gz
解開 roller-src-1.2.tar.gz,會新增一個 roller-src-1.2 的資料夾。
03. tar zxvf roller-tools-1.2.tar.gz
解開 roller-tools-1.2.tar.gz,會新增 tools 的資料夾。
04. mv -rf tool /home/roller-src-1.2
將 tools 資料夾,移到 /home/roller-src-1.2 裡。
05. rm *.tar.gz
刪除 roller-src-1.2.tar.gz、roller-tools-1.2.tar.gz。
06. 將 roller complier 一次。
資料庫
由於 Roller 沒有直接支援 Oracle 所以我們要對他提供的 createdb.sql 做些修改。其中要注意 comment 這個 table,因為 comment 是 oracle 的保留字,所以要改名字(commentt),並在roller/WEB-INF/classes/org/
roller/pojos/CommentData.hbm.xml 裡在 class 標籤裡的 table 改成 commentt。另外有幾個欄位的 datatype 為 bit、text 及 timestamp 也要改成 number(1)、clob 及 date,有幾個欄位 Roller 預設 index 名稱超過 30 個字的也要修改一下。
roller/pojos/CommentData.hbm.xml 裡在 class 標籤裡的 table 改成 commentt。另外有幾個欄位的 datatype 為 bit、text 及 timestamp 也要改成 number(1)、clob 及 date,有幾個欄位 Roller 預設 index 名稱超過 30 個字的也要修改一下。
01. 在 Oracle 9i 新增一個 DB,命名為 Roller。
02. 依照這一個 script 檔新增表格。
TOMCAT 設定
下載這一個設定檔,放在 roller/conf/Catalina/localhost/ 裡,並修改 roller webapp 的絕對路徑、oracle 資料庫的 IP、port、帳號及密碼。
Roller 的設定
由於 Roller 是用 Hibernate 跟資料庫做溝通,我們要在 Hibernate 中做好與 oracle 的溝通設定。
請下載這一個設定檔,放到 roller/webapp/WEB-INF/classes/,並修改 oracle 資料庫的 IP、port、帳號及密碼。
處理 clob 格式欄位
因為 Oracle 不支援 text,我們將格式轉為 clob,所以我們要處理將資料塞進 clob 的問題。
01. 請將 這一支程式放到 roller/webapp/WEB-INF/classes/org/roller/util 中。
02. 把 CommentData.hbm.xml、EntryAttributeData.hbm.xml、
PageData.hbm.xml、PlanetEntryData.hbm.xml、
PlanetGroupData.hbm.xml、RefererData.hbm.xml、
RollerConfigData.hbm.xml、RollerPropertyData.hbm.xml、
WeblogEntryData.hbm.xml、WebsiteData.hbm.xml,放到 roller/webapp/WEB-INF/classes/org/roller/pojos 內,蓋過原本的檔案。
啟動
重新啟動兩次,第一次會將設定檔裡的資料寫進資料庫,第二次啟動便會抓的到資料庫裡的資料了。
設定檔
01. webapp/WEB-INF/classes/rollerRuntimeConfigDefs.xml
整個站的站名、敘述、絕對位址、管理者的 E-MAIL、文章編輯器種類等等,第一次啟動便是將這邊的資料存進資料庫。
02. webapp/WEB-INF/classes/hibernate.cfg.xml
關於 hibernate 的設定,與 oracle 的溝通、相關檔案的連結路徑等等。
03. webapp/WEB-INF/struts-config.xml
struts 的相關路徑設定。
04. webapp/WEB-INF/roller-config.xml
關於 roller 使用者的預設設定。
常會發生的問題
01. tomcat 與 oracle 之間的溝通,請注意 tomcat、oracle 及 java 間的版本配合問題。
02. hibernat 裡關於 oracle 的設定方式。
03. oracle 可以連到,tomcat 也沒問題了,但是出現以下的狀況,就是資料庫欄位格式的關係。
a. 一連進 roller 即出現 error message。
b. 無法登入 roller ,出現 帳號與密碼不符的訊息。
c. 不能更換 template,會出現 error message。
其餘 java 環境及系統方面的問題,請自行注意。