隨筆-348  評(píng)論-598  文章-0  trackbacks-0
          1.下載roller 3.1的源代碼和required jars(一定要下載,否則沒(méi)有辦法編譯和運(yùn)行)
          required jars : https://roller.dev.java.net/servlets/ProjectDocumentList?folderID=6962&expandFolder=6962&folderID=6959

          2.然后在命令行中源代碼的目錄下面執(zhí)行build all命令。
          如果你的JDK環(huán)境大于1.4了,雖然可以調(diào)整兼容等級(jí),但還是建議你使用JDK1.4,為了不改變你的原始JDK環(huán)境,可以在build.bat中加入
          set JAVA_HOME=D:\j2sdk1.4.2_17\
          set PATH=%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
          set CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
          來(lái)臨時(shí)設(shè)置新jdk

          3.build all過(guò)后,首先,他會(huì)生成所有的wrapper類等等,將生成的所有的類源文件(src下的)拷貝到roller源代碼根目錄src目錄中,webapp中的內(nèi)容拷貝到根目錄下web中,在compile目錄下的business\org\apache\roller\pojos\和business\org\apache\roller\planet\pojos\中有很多hbm.xml需要拷貝到源代碼同樣的目錄中,還有就是將classes下的所有文件拷貝到roller的src根目錄下。
          其次,如果你需要覆蓋一些屬性,例如數(shù)據(jù)庫(kù)連接配置等等,需要在src下建立一個(gè)roller-custom.properties文件,放入一些你要覆蓋的配置項(xiàng),例如我要連接SQL Server數(shù)據(jù)庫(kù),則這樣配置
          hibernate.dialect=org.hibernate.dialect.SQLServerDialect
          jdbc.driverClass=com.microsoft.jdbc.sqlserver.SQLServerDriver
          jdbc.connectionURL=jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=roller31;User=sa;Password=
          jdbc.username=sa
          jdbc.password=
          當(dāng)然,不要忘了把相關(guān)jar包放進(jìn)去。

          其他配置請(qǐng)參考Install Guide

          4.下面是建立數(shù)據(jù)庫(kù),如果你使用的SQL Server,建議你將rollerdb腳本中的text類型字段,全部改為ntext,因?yàn)镾QL Server jdbc的驅(qū)動(dòng)對(duì)text的支持存在bug...會(huì)有問(wèn)題的。
          如果你使用的tomcat 5.x,請(qǐng)去下載一個(gè)兼容包,用來(lái)兼容在JDK 1.4上的運(yùn)行,默認(rèn)配置下只可以在jdk 1.5上穩(wěn)定運(yùn)行。

          5.建立一個(gè)Web Project,將roller3.1/src中所有文件拷貝到項(xiàng)目的src中,將roller3.1/web中的所有內(nèi)容拷貝到項(xiàng)目webroot中,去掉WEB-INF目錄下面lib目錄中的roller-business.jar和roller-web.jar兩個(gè)文件,將其他文件添加到build path中。

          注意:
          如果你是直接部署方式,碰到用戶正確注冊(cè),但每次登陸都提示用戶名密碼錯(cuò)誤(Wrong username and password combination),請(qǐng)修改security.xml,源代碼段修改如下部分:
              <bean id="jdbcAuthenticationDao" class="org.acegisecurity.userdetails.jdbc.JdbcDaoImpl">
                  
          <property name="dataSource">
                      
          <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">  
                          
          <property name="driverClassName">  
                              
          <value>net.sourceforge.jtds.jdbc.Driver</value>  
                          
          </property>  
                          
          <property name="url">  
                              
          <value>jdbc:jtds:sqlserver://127.0.0.1:1433;DatabaseName=roller31;User=sa;Password=</value>  
                          
          </property>  
                          
          <property name="username">  
                              
          <value>sa</value>  
                          
          </property>  
                          
          <property name="password">  
                              
          <value></value>  
                          
          </property>  
                      
          </bean>  
                  
          </property>
                  
          <property name="usersByUsernameQuery">
                      
          <value>SELECT username,passphrase,isenabled FROM rolleruser WHERE username = ?</value>
                  
          </property>
                  
          <property name="authoritiesByUsernameQuery">
                      
          <value>SELECT username,rolename FROM userrole WHERE username = ?</value>
                  
          </property>
              
          </bean>
          將數(shù)據(jù)源添加上去,因?yàn)槲野l(fā)現(xiàn)3.1中的設(shè)定jdbc.XX只會(huì)對(duì)roller主程序有效,對(duì)acegi無(wú)效,但是如果你是通過(guò)配置tomcat來(lái)加載的就不需要,這種情況只會(huì)發(fā)生在直接部署上面。

          如果你碰到了ResultSet can not re-read row data for column 1問(wèn)題,請(qǐng)參考:
          http://www.aygfsteel.com/TiGERTiAN/archive/2008/11/16/240794.html

          至此,roller 3.1 的二次開(kāi)發(fā)環(huán)境就搭好了。

          等項(xiàng)目完成的差不多了,我會(huì)把3.1和4.0的中文國(guó)際化文件發(fā)布出來(lái),方便大家使用。

          ---------------------------------------------------------
          專注移動(dòng)開(kāi)發(fā)

          Android, Windows Mobile, iPhone, J2ME, BlackBerry, Symbian
          posted on 2008-11-16 13:03 TiGERTiAN 閱讀(1540) 評(píng)論(2)  編輯  收藏 所屬分類: JavaRoller

          評(píng)論:
          # re: 【第二版】Roller 3.1二次開(kāi)發(fā)工程配置(添加了常見(jiàn)問(wèn)題解決及詳細(xì)步驟) 2009-02-24 16:17 | 亞亞
          roller只是安裝好了,想做二次開(kāi)發(fā),可是發(fā)現(xiàn)很多問(wèn)題,能否跟您討教一下,萬(wàn)分感謝。  回復(fù)  更多評(píng)論
            
          # re: 【第二版】Roller 3.1二次開(kāi)發(fā)工程配置(添加了常見(jiàn)問(wèn)題解決及詳細(xì)步驟) 2009-02-24 16:18 | 亞亞
          忘了留聯(lián)系方法:qq 405359 email:jetaime76@163.com  回復(fù)  更多評(píng)論
            
          主站蜘蛛池模板: 岢岚县| 陇川县| 阿图什市| 马关县| 定州市| 德钦县| 会宁县| 家居| 三门峡市| 赤壁市| 象山县| 棋牌| 渭南市| 东明县| 麻城市| 朝阳区| 忻州市| 景德镇市| 沙河市| 汪清县| 荆门市| 正安县| 屯门区| 秦皇岛市| 文成县| 汪清县| 探索| 师宗县| 望都县| 福贡县| 府谷县| 民乐县| 五华县| 赤壁市| 泊头市| 乐安县| 锡林郭勒盟| 喜德县| 宜丰县| 阜新| 安仁县|