最近研究Roller,一直手癢,想搞個Java 的博客玩玩,網上查了下,Roller像是比較出名,所以就選擇他了。
     可惜網上中文的文檔不多,官方e文的文檔也不多,連API也沒有提供,所以,我覺得,先把他的三個文檔翻譯下,一來方便我學習,二來,給同時給感興趣的又不敢冒e文同志的一些方便(聲明下,我像是也不怎么感冒e文,所以敢同身受)。
   廢話少說,先貼點出來,接下來連載啦。
                  ------------------------------------------------------------
                                                                   Roller  安裝指南

目錄
1 概述
  1.1 版權和商標信息
  1.2 反饋
  1.3 文檔說明
 1.4 更改和補充
2 5分鐘安裝
3 準備滾動了嗎?
 3.1 Tomcat:Javamail 和 Activation(發郵件的java API )
 3.2 Tomcat:URI編碼國際化支持(I118N)
4 下載和解壓Roller
 4.1 安裝目錄說明
 4.2 Roller博客打包(WAR包)
5 準備Roller所需數據庫
 5.1 創建Roller數據庫
 5.2 檢驗JDBC數據庫驅動設置
 5.3 MySQL和Oracle的注意事項
6 配置Roller
 6.1 以MySQL為例子
7 部署Roller
  7.1 把 roller-custom.properties 放到 classpath的路徑下
 7.2 通過控制臺部署Roller
8 開始使用Roller
  8.1 引導完成Roller的安裝
  8.2 注冊一個用戶及創建一個博客
9 配置技巧和小竅門
   9.1  設置 Roller的Planet聚合器
   9.2  修改security.xml里的關鍵字
   9.3  使用服務器提供的數據庫和郵件資源
   9.4  手動創建及其升級表的操作
10 升級Roller
   10.1 從Roller 2.x升級到Roller 4.0
  10.2 備份Roller老版本
  10.3 安裝設置Roller新版本
11 roller.properties


 

1 概述
      這份文檔是講如何安裝 Apache Roller 博客軟件的。將會告訴你首先該裝什么,如何下載Roller,如何設置Roller,以及如何將Roller安裝到現有的java應用服務器及其關聯數據庫上。同樣也提供了更具有親和的5分鐘安裝說明。
1.1 版權和商標信息
這份文檔遵循Apache Software License的條款(嘻嘻,開源啦~)。
在這個文件里的所有的商標屬于法定所有者(估計就是Roller的開發者或組織)。
1.2 反饋(聯系方式)
  如有對這個文檔有任何意見或建議,請直接發送到: user@roller.apache.org。
1.3 文檔說明
 這份文檔的初始版本是由Dave Johnson撰寫的,當前版本是由Apache 組織下的Apache Roller 項目組維護。
 這份文檔的格式是基于OpenOffice.org項目下的OpenDS項目文檔模板。
1.4 更改和補充
日期            變更描述
2007七月  重寫了Roller4.0簡單安裝步驟


2  5分鐘安裝
如果你知道將要怎么做,你只需要快速的預覽獲取的Roller安裝包以及恰當支持的平臺(如,Tomcat和MySQL),或許你就可以通過本寫簡單的5分鐘安裝步驟完成安裝。如果你沒有信心完成,可以跳到第三部分。下面就開始介紹如何在5分鐘內安裝Roller:
 第一步:下載Roller(Zip或GNU Tar)壓縮包,解壓到你本機的硬盤上。
 第二步:創建一個放置Roller數據表的數據庫。
 例如,在MySQL上你或許會這么做:

1% mysql -u root -p
2password: *****
3mysql> create database rollerdb;
4mysql> grant all on rollerdb.* to scott@'%' identified by 'tiger';
5mysql> grant all on rollerdb.* to scott@localhost identified by 'tiger';


 第三步: 創建一個roller-custom.properties配置文件,放在Servlet 容器的Classpath下,例如,Tomcat上就放在common/classes.如下配置你的數據庫以及郵件服務器替換文件里的粗體部分。
 

 1installation.type=auto
 2database.configurationType=jdbc
 3database.jdbc.driverClass=com.mysql.jdbc.Driver
 4database.jdbc.connectionURL=jdbc:mysql://localhost:3306/rollerdb
 5database.jdbc.username=scott
 6database.jdbc.password=tiger
 7mail.configurationType=properties
 8mail.hostname=smtp-server.example.com
 9mail.username=scott
10mail.password=tiger


第四步:
校驗你servlet容器下的JDBC和javamail的設置。確保你的數據庫的JDBC驅動在你的Servlet容器的classpath路徑下,例如Tomcat的驅動放置的路徑為common/lib。如果你還需要發送郵件的話,還要把Javamail和Activation.jar(mail.jar和activation.jar)放到該路徑下。
第五步:使用Servlet 容器管理控制臺部署Roller目錄到Servlet 容器上。Roller應用就會安裝到webapp/roller目錄下第六步:瀏覽打開Roller(或許是http://localhost:8080/roller)。如果Roller運行正常,那么就繼續第八部分,開始使用Roller。如果Roller沒法運行而且你無法形容為什么這樣,那就試著采用正常安裝步驟從以下第三部分開始。


3 準備滾了嗎?
首先,我們來確認你用來安裝和運行Roller要做的每一件事。
Roller是一個需要數據庫驅動的java 網絡應用。所以你要運行該應用,需要Java,Java Servlet 容器像Tomcat和 一個數據庫像MySQL。特別明確下,安裝和運行Roller所要具備的條件:
 . Java開發工具集(JDK),需要Sun Java2 SE 1.5 JDK。在你的計算機上安裝Roller就要配置Java SE 5。Roller 3.x是最后一個支持Java1.4.2的版本。
 . 一個Java 應用服務,特別指出要支持Servlet2.4API的Servlet 容器。在下面,都稱其為服務(server)。Roller社區往往就對Tomcat 5.5,Tomcat 6.0,Sun Web Server 7.0以及Glassfish2.0的使用中的問題作答。
.一個關聯數據庫 例如,MySQL或Apache Derby。Roller社區傾向于使用和回答問題關于MySQL and Apache Derby,但是Roller也可以使用其他數據庫。Roller創建了針對DB2,Derby,HSQL-DB,Microsoft SQL Server,MySQL,Oracle 和PostgreSQL這些數據庫的腳本。
如果你正在使用Tomcat的話,下面部分將驗證Tomcat所需具備的事項,否則,你可以直接看第四部分:下載解壓Roller。
3.1 Tomcat:JavaMail and Activation
Tomcat沒有包含Roller所需電郵公告(發送)的java Mail 和 Activation 的jar包,所以,如果你要使用Roller的電郵公告的功能,你就需要下載那些jar包放到Tomcat的Classpath下。需要從Sun的站點下載(http://java.sun.com/products/javamail)然后放到Tomcat的common/lib 目錄下。
3.2 Tomcat:URI 編碼國際化(I118N)
Roller 支持國際化(I18N),但是Tomcat需要另外的一些設置。你必須確保Tomcat的URI編碼是設置為UTF-8.因此你要修改Tomcat配置文件conf/server.xml在每一個連接元素加URIEncoding="UTF-8",就像下面這樣:
<Connector port="8080"
  maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
  enableLookups="false" redirectPort="8443" debug="0"
  acceptCount="100" connectionTimeout="20000"
  disableUploadTimeout="true"
  URIEncoding="UTF-8" />
確保Roller所要用到的連接加以修改。例如,你使用AJP連接或HTTPS 連接,同樣也要加URIEncoding="UTF-8"的屬性。

4 下載解壓Roller

從http://roller.apache.org下載Apache Roller 版本文件.如果你是Windows用戶就下載.zip文件,用你所喜愛的解壓工具解壓這個文件。Unix用戶就下載.tar.gz文件,使用GNU tar 來解壓。
4.1 安裝目錄展示
一旦你解壓這個文件,你將發現如下結構的目錄

 


LICENCE.txt 和 NOTICE.txt包含了Apache Software Liscense以及其他一些同版本關聯的法律條文。README.txt指出了這篇文檔所在的doc目錄。
4.2 Roller博客網絡應用程序
Roller博客程序在webapp/roller目錄下,采用了標準的Java EE WAR 的目錄結構。一般來說,你不需要修改者里面的任何文件。你可以部署這個在目錄表單里,或者部署一個文件,那就要打包成.war文件。
例如,這里是打包成WAR文件的方法:

1% cd apache-roller-X.0/webapp/roller
2% jar cvf ../roller.war *



5 準備Roller所需的數據庫
在你安裝Roller之前,先要為Roller所需的數據庫做一些準備工作。
你在一些地方存放Roller的數據表,有的人稱之為數據表空間,但是我們情愿稱其為數據庫。
你需要創建一個數據庫,或讓數據庫管理員來為你創建。然后你需要為你的數據庫選擇一個JDBC驅動來安裝。
如果你正在將Roller安裝到Glassfish并JavaDB/Derby數據庫的話,你就可以跳過這一部分了;Derby不需要創建數據庫,并且Glassfish也包含了Derby的JDBC驅動。
5.1 創建一個Roller所需的數據庫
  如果你有幸有自己的數據庫管理員,就請他們安裝一個數據庫,當他們做完后,問他們要如下的信息,你之后會用到:
  . 用來連接數據庫的用戶名和密碼
  . 連接數據庫的 JDBC的地址(URL)
  . JDBC的類名
如果你沒有數據庫管理員,那你就只能參照文檔準備數據庫。你需要創建一個Roller所需的數據庫,并使用用戶名和密碼來保護。例如,你正在使用的數據庫是MySQL,請如下操作:

1% mysql -u root -p
2password: *****
3mysql> create database rollerdb;
4mysql> grant all on rollerdb.* to scott@'%' identified by 'tiger';
5mysql> grant all on rollerdb.* to scott@localhost identified by 'tiger';


5.2 檢查JDBC驅動設置
確保在服務器上安裝的是正確的JDBC驅動。通常,基本上都是JDBC驅動的jar包,然后放在服務器的CLasspath的路徑下。例如,在Tomcat5.5上是common/lib,在Tomcat6.0上是在lib,在Glassfish的domain的lib目錄下。
5.3 MySQL和Oracle考慮事項
基于我們支持MySQL的經驗,我們如下的建議:
 .  對于MySQL,確保TCP/IP網絡是可用的。
 .  對于MySQL4.1.x 使用J/Connector3.0.xJDBC驅動替代更加新的3.1.x系列。
 .  對于MySQL5.x 使用J/Connector3.1.xJDBC驅動替代更加新的3.1.x系列。
 .  確保MySQL的 UTF-8支持可用。詳情見如下的頁面:
 http://rollerweblogger.org/wiki/Wiki.jsp?page=SetupUTF8onMySQL
 .對于Oracle的用戶,請使用ojdbc14.jar的10g(10.1.0.2更高)驅動,即使是在對Oracle9服務器操作。


先貼到這里,明天繼續。
 

 

 

設置Reller

可能讓你設置Roller的文件只有一個:

roller-custom.properties

那是一個簡單的Java屬性配置文件,

一個重寫了Roller內部默認設置(roller.properties)文件。用來設置你所看到的Roller內部配置文件,決定哪些屬性你需要重寫,可以在roller-custom.properties文件里設置那些屬性。

你可以找到完整的Roller 內部配置文件(roller.properties)在第11部分,也建議你可以看一下,但是在這里我們舉個簡單的例子只要你知道如何配置數據庫讓Roller運行。

創建一個名為roller-custom.properties內容如下的的文本文件,但是從、需要替換斜體部分的文字用來設置你的數據庫和郵件服務器。

1installation.type=auto 
2database.configurationType=jdbc
3database.jdbc.driverClass=JDBC driver [class name] 
4database.jdbc.connectionURL=JDBC connection URL 
5database.jdbc.username=database username 
6database.jdbc.password=database password 
7mail.configurationType=properties 
8mail.hostname=mail server hostname 



installation.type=auto是告訴Roller是自動安裝模式。在這個模式下,提供非常詳細的錯誤詳情來幫助你調試數據庫連接的問題。如果Roller發現數據庫存在但是表不存在,則會運行數據庫創建腳本,如果發現表存在,但是不是當前版本的Roller則會提供表的升級。一旦Roller安裝成功,并且需要在線使用,則你應該設置installation.type=manual

6.1 MySQL例子

這里的roller-custom.properties示范了MySQL連接。顯示了MySQL JDBC

驅動類名,MySQL連接URL,以及用來連接郵件服務器的用戶名、密碼

 

 1installation.type=auto database.configurationType=jdbc 
 2
 3database.jdbc.driverClass=com.mysql.jdbc.Driver 
 4
 5database.jdbc.connectionURL=jdbc:mysql://localhost:3306/rollerdb 
 6
 7database.jdbc.username=scott 
 8
 9database.jdbc.password=tiger mail.configurationType=properties mail.hostname=smtp-
10server.example.com mail.username=scott 
11
12mail.password=tiger 
13

接下來,我們來部署Roller

 

7 部署Roller

現在你已經有了Roller WarRoller配置文件roller-custom.properties,你可以準備部署Roller到服務器上了。首先,部署你的配置文件。

7.1 把roller-custom.properties放到Classpath下
Roller能夠找到你的配置文件通過不同的方法,詳情你可以看第11部分。

最簡單的事,你要做的是把文件在你的應用服務器的classpath下,就是放到Classes的目錄下。啟動時,Roller將找到配置文件。這里對一些熱門的服務器的路徑地址。

 Tomcat5.5,拷貝到common/classes目錄下。

 Tomcat6.0,拷貝到lib目錄下。

 Glassfish,拷貝到你的domainlib/classes目錄下。

現在你可以準備部署Roller了。

7.2 通過管理控制臺部署Roller

使用服務器管理控制臺來部署Roller網絡應用。

你可以部署一個目錄,在這種情況下,配置你的安裝路徑webapp/Roller。或者你可以部署一個WAR文件,在這個情況下你得先創建一個WAR文件(第4.2部分有交代)。

我們來看看如何在Tomacat6.0Glassfishv2.0部署的。


部署到Apache Tomcat 6.0

你可以在Tomcat上部署

WAR文件或者是目錄。下面這個截屏展示了基于目錄的部署項。


         

 

一旦Roller被部署,你將看到其他應用的列表里列出。那個/roller是用來鏈接到Roller的,還有啟動,停止,重載,卸載部署的選項。

 

 

如果Roller沒法啟動,請查看問題日志。能在Tomcatlog目錄下找到。

Tomcat的日志文件在catalina.outRoller的日志文件在roller.log下。



  

部署到Glassfish v2.0

同樣你也可以部署一個WAR文件或者一個目錄到Glassfish上。下面的截屏展示基礎目錄部署項。



 

一旦Roller被不是上,你將看到Roller也被列在應用列表里。在映射連接到Roller上,有的按鈕可用,有的則不展示,或置灰。

如果Roller沒有啟動,可以在日志里查看問題。你能在Glassfishdomainlogs目錄下找到。Glassfish日志是server.logRoller日志是在roller.log.


 

8 開始使用Roller

在你完成了安裝步驟后,現在你可以準備開始使用Roller了,所以我們將帶你進入Roller,注冊一個用戶和創建一個博客。我們也會針對發生錯誤,就是什么問題。

8.1 瀏覽Roller,完成安裝

瀏覽Roller,如果你使用的是TomcatGlassfish安裝的,那么Roller也許在http://localhost:8080/roller。你或許會看到一個有錯誤信息的頁面,一個提供創建數據庫表的網頁或一個提示你完成注冊一個管理員用戶及創建首頁博客的網頁。首先,我們來看看當發生錯誤的時候,就近出了什么問題。

如果是你數據庫設置問題,Roller將會展示一個錯誤信息頁面來幫助你診斷這個問題。或許是連錯了的JDCB驅動類名,URL鏈接,用戶名,密碼。亦或許你的數據庫沒有啟動起來。利用所提供的資料,以確定哪些是錯的,修理,然后重新部署Roller


 

自動創建表

如果你的數據庫沒有問題,但是Roller沒能找到數據表,那么Roller將會提供自動創建的頁面。如果你

如果使用這個頁面,Roller將會運行創建數據庫表的腳本及可以看到創建結果。然后你可以進行下一步設置你的第一個用戶帳戶和博客。

 

8.2 注冊一個用戶,創建一個博客

如果Roller啟動好了,但是沒有找到博客的首頁,那么下面將展示如何注冊你第一個用戶,創建你第一個博客,設置你的站點的首頁。

你必須要決定什么作為你Roller站點的首頁。如果你使用Roller來運行你的個人博客,那么你就要你的博客作為站點的首頁。這樣的話,只要創建的你自己的博客,不要選擇首頁主題但是要設置你的博客作為站點的首頁博客。




 

如果你用來創建一個社區性的多用戶博客,那么你可以在首頁展示全部博客的匯總,這樣的話,創建一個博客用來服務于首頁的博客,并設置為首頁博客,一定要設置“匯總首頁”做為服務管理頁。

不要忘了:重置installation.type標志
現在你已經完成安裝,你應該關閉roller自動安裝系統了。編輯roller-custom.properties文件,設置installation.type=manual。
然后重啟你的服務器,Roller就接受了新的設置。
接下來做什么?
一旦你啟用了Roller,Roller用戶指南有關于更多運行Roller系統和博客的信息。通過Roller模板指南信息,來定制你的博客。如果你通過文檔無法找到你需要的關于Roller使用的描述,那么你在郵件列表里提問:地址是:http://cwiki.apache.org/confluence/display/ROLLER/Roller+Mailing+Lists



未完待續