Terry.Li-彬

          虛其心,可解天下之問;專其心,可治天下之學;靜其心,可悟天下之理;恒其心,可成天下之業。

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            143 隨筆 :: 344 文章 :: 130 評論 :: 0 Trackbacks

          1、 解壓 liferay-portal-src-4.4.1.rar SpagoBI-src-1.9.4.rar liferay-portal-tomcat-5.5-jdk5-4.4.1.rar 三個 rar 包到 workspace 目錄下

          2、 打開 eclipse ,導入 liferay-portal-src-4.4.1 SpagoBI-src-1.9.4

          3、 加入 maven 依賴

          4、 eclipse 中修改 SpagoBI-src-1.9.4\LiferayPortalSecurityProvider\pom.xml 中的

          < dependency >

          ????? < groupId > liferay </ groupId >

          ????? < artifactId > liferay.portal-service </ artifactId >

          ????? < version > 4.2.2 </ version >

          ????? < scope > system </ scope >

          ????? < systemPath > ${liferay.lib.dir}/portal-service.jar </ systemPath >

          ??? </ dependency >

          ??? < dependency >

          ? ???? < groupId > liferay </ groupId >

          ????? < artifactId > liferay.portal-kernel </ artifactId >

          ????? < version > 4.2.2 </ version >

          ????? < scope > system </ scope >

          ????? < systemPath > ${liferay.lib.dir}/portal-kernel.jar </ systemPath >

          </ dependency > ???

          <systemPath 路徑指為 liferay-portal-tomcat-5.5-jdk5-4.4.1/common/lib/ext/portal-service.jar liferay-portal-tomcat-5.5-jdk5-4.4.1/common/lib/ext/portal-kernel.jar

          例如:

          < dependency >

          ????? < groupId > liferay </ groupId >

          ????? < artifactId > liferay.portal-service </ artifactId >

          ????? < version > 4.2.2 </ version >

          ????? < scope > system </ scope >

          ????? < systemPath > E:/workspacse_all/liferay-spagobi-4.4.1/liferay-portal-tomcat-5.5-jdk5-4.4.1/common/lib/ext/portal-service.jar </ systemPath >

          ??? </ dependency >

          ??? < dependency >

          ????? < groupId > liferay </ groupId >

          ????? < artifactId > liferay.portal-kernel </ artifactId >

          ????? < version > 4.2.2 </ version >

          ????? < scope > system </ scope >

          ????? < systemPath > E:/workspacse_all/liferay-spagobi-4.4.1/liferay-portal-tomcat-5.5-jdk5-4.4.1/common/lib/ext/portal-kernel.jar </ systemPath >

          ??? </ dependency >

          這樣在 eclipse 保存后,代碼會根據 liferay4.4.1 的包來編譯代碼,容易看到錯誤

          ?

          ?

          5、? 修改代碼 SpagoBI-src-1.9.4\LiferayPortalSecurityProvider\src\it\eng\spagobi\security\LiferaySecurityProviderImpl.java 中的: User user = UserServiceUtil.getUserById(userName); User user = UserServiceUtil.getUserById(Long.parseLong(userName));

          6、? 修改代碼 SpagoBI-src-1.9.4\LiferayPortalSecurityProvider\src\it\eng\spagobi\security\LiferayUserProfileImpl.java 中的: User user = UserServiceUtil.getUserById(userUniqueIdentifier); User user = UserServiceUtil.getUserById(Long.parseLong(userUniqueIdentifier));

          7、? 緊接著修改下面的 userAttributes.put(USER_ID, user.getUserId()); userAttributes.put(USER_ID, user.getUserId()+"");

          修改 liferay-portal-src-4.4.1\portal-impl\src\com\liferay\portal\servlet\taglib\portlet\ActionURLTagUtil.java 中的代碼,添加一個方法: /**

          ??? ? * Terry 添加

          ??? ? * @param action

          ??? ? * @param windowState

          ??? ? * @param portletMode

          ??? ? * @param var

          ??? ? * @param varImpl

          ??? ? * @param secure

          ??? ? * @param portletName

          ??? ? * @param anchor

          ??? ? * @param encrypt

          ??? ? * @param doAsUserId

          ??? ? * @param portletConfiguration

          ??? ? * @param params

          ??? ? * @param writeOutput

          ??? ? * @param pageContext

          ??? ? * @return

          ??? ? * @throws JspException

          ??? ? */

          ??? public static String doEndTag(

          ?????????? boolean action, String windowState, String portletMode, String var,

          ?????????? String varImpl, Boolean secure, String portletName, Boolean anchor,

          ?????????? Boolean encrypt, String doAsUserId, Boolean portletConfiguration,

          ?????????? Map params, boolean writeOutput, PageContext pageContext)

          ?????? throws JspException {

          ?????? try {

          ?????????? long lDoAsUserId = 0;

          ?????????? if ( null != doAsUserId && ! "" .equals(doAsUserId) && Long.parseLong(doAsUserId)>0) {

          ????????????? lDoAsUserId = Long.parseLong(doAsUserId);???????????

          ?????????? }

          ?????????? return doEndTag(action, windowState, portletMode, var,

          ????????????????? varImpl, secure, portletName, anchor,

          ????????????????? encrypt, lDoAsUserId, portletConfiguration,

          ????????????????? params, writeOutput, pageContext);

          ?????? } catch (Exception e) {

          ?????????? _log .error(e, e);

          ?

          ?????????? throw new JspException(e);

          ?????? }

          ??????

          8、? }

          9、? 到這里 spagobi 部分的代碼就修改完了。

          10、? liferay-portal-tomcat-5.5-jdk5-4.4.1\webapps\ROOT\WEB-INF\lib\portal-impl.jar 使用 winrar 文件打開到 portal-impl.jar\com\liferay\portal\servlet\taglib\portlet 把里面的 ActionURLTagUtil.class 文件刪除,將 liferay-portal-src-4.4.1\bin\com\liferay\portal\servlet\taglib\portlet 下面修改后的 class 文件拖到 portal-impl.jar 相應目錄下

          11、????????????? SpagoBI-src-1.9.4. 路徑下使用 maven 命令 mvn -Pspagobi-liferay package

          12、?????????????

          13、????????????? 拷貝 SpagoBI-src-1.9.4\build\tomcat-server\common\lib\ext 下的 *.jar liferay-portal-tomcat-5.5-jdk5-4.4.1\common\lib\ext 中不覆蓋已經存在的 jar

          14、????????????? 拷貝 SpagoBI-src-1.9.4\build\tomcat-server\conf\server.xml 中的 <Context 數據源到 liferay-portal-tomcat-5.5-jdk5-4.4.1\conf\server.xml

          15、????????????? liferay-portal-tomcat-5.5-jdk5-4.4.1\conf\server.xml <Context path="/spagobi" 標簽中的數據源定義 <Resource 剪切到 liferay-portal-tomcat-5.5-jdk5-4.4.1\conf\context.xml

          16、????????????? 拷貝 SpagoBI-src-1.9.4\build\tomcat-server\webapps 下的所有文件到 liferay-portal-tomcat-5.5-jdk5-4.4.1\webapps

          17、????????????? 修改 liferay-portal-tomcat-5.5-jdk5-4.4.1\webapps\spagobi\WEB-INF\conf 下的 cms.xml ,將其中

          <PARAMETERS>

          ?????? ??????????? <PARAMETER name="repository_path" value="${SERVER_HOME}/sbidata/jcrRepositoryFS/" />

          ?????? ??????????? <PARAMETER name="conf_file_path" value="${SERVER_HOME}/sbidata/jcrRepositoryFS/repository.xml" />

          ?????? ??????? </PARAMETERS>

          替換為

          <PARAMETERS>

          ?????? ??????????? <PARAMETER name="repository_path" value="jcrRepositoryFS/" />

          ?????? ??????????? <PARAMETER name="conf_file_path" value="jcrRepositoryFS/repository.xml" />

          ?????? ??????? </PARAMETERS>????????

          18、????????????? liferay-portal-tomcat-5.5-jdk5-4.4.1\webapps\spagobi 目錄下建立文件夾 jcrRepositoryFS

          19、????????????? jcrRepositoryFS 文件夾下建立 repository 文件夾

          20、????????????? 拷貝 SpagoBI-src-1.9.4\SpagoBIProject\src 下的 repository.xml 文件到 liferay-portal-tomcat-5.5-jdk5-4.4.1\webapps\spagobi\jcrRepositoryFS

          21、????????????? 拷貝 SpagoBI-src-1.9.4\SpagoBIUtilityFiles\liferay-libraries 下的 hibernate-3.1rc2.jar liferay-portal-tomcat-5.5-jdk5-4.4.1\webapps\spagobi\WEB-INF\lib

          22、????????????? SpagoBI-src-1.9.4\SpagoBIUtilityFiles\tomcat-server 下的 sbidata 拷貝到 liferay-portal-tomcat-5.5-jdk5-4.4.1 目錄下

          23、????????????? 啟動 liferay-portal-tomcat-5.5-jdk5-4.4.1\sbidata\database\start.bat 數據庫

          24、????????????? 啟動 tomcat?? liferay-portal-tomcat-5.5-jdk5-4.4.1\bin\startup.bat

          ?

          ?

          ?

          ?

          ?

          ?

          ?

          ?

          5. 更改liferay sapgoBI的數據庫

          Liferay sapgoBI默認的數據庫都是內存數據庫HSQL,為了方便開發,我們需要更改為別的數據庫,下面一SQLserver為例來操作。

          < >.更改liferay的數據庫

          <1>. liferay官網上下載和所用liferay版本相同的SQL,例如我們現在的liferay版本是4.2.2,那么SQL就是:liferay-portal-sql-4.2.2,解壓后運行create/create-sql-server.sql,在本地sqlserver中就創建了相應的db

          <2> 更改tomcatliferay4.2.2/conf/Catalina/localhost下的ROOT.xml,將其中的內容:

          .

          <Resource

          ?????? name="jdbc/LiferayPool"

          ?????? auth="Container"

          ?????? type="javax.sql.DataSource"

          ?????? driverClassName="org.hsqldb.jdbcDriver"

          ?????? url="jdbc:hsqldb:lportal"

          ?????? username="sa"

          ?????? password=""

          ?????? maxActive="20"

          ??? />

          .

          改為:

          <Resource

          ?????? name="jdbc/LiferayPool"

          ?????? auth="Container"

          ?????? type="javax.sql.DataSource"

          ??????? driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"

          ??? ??? username="sa"

          ??? ??? password="bbbbb"

          ??? ??? url="jdbc:sqlserver://localhost;DatabaseName=lportal"

          ??? ??? maxActive="20"

          ??? />

          <3>. sqljdbc的驅動包,拷貝到tomcatliferay4.2.2/common/ext

          <4>liferay 默認的數據庫名稱為lportal,如果需要自定義一個數據庫,那么需要將將上面的數據源名稱修改,還要把liferay-portal-tomcat-5.5-jdk5-4.4.1\webapps\spagobi\WEB-INF\conf\spagobi下的spagobi.xml

          <HIBERNATE-CFGFILE>hibernate.cfg.sqlserver.xml</HIBERNATE-CFGFILE> 換為對應數據庫的hibernate配置文件連接。
          下面把<SPAGOBI_CONTEXT_PATH>http://10.16.202.74:8080/spagobi</SPAGOBI_CONTEXT_PATH>修改

          到此,liferay4.2.2db更換完畢。

          ?

          < >更換SpagoBI1.9.4的數據庫,仍然以SQL server為例:

          <1>. SpagoBI官網上下載sql,其名稱為:sqlserver-dbscript-1.9.4.zip

          <2>. 解壓后執行其中的SQLServer_create.sqlSQLServer_create_fk.sqlSQLserver_create_quartz_schema.sqlSQLServer_insert.sql,此時就會在本地SQLserver中建立spagoBI1.9.4相關的DBTable

          <3>. 修改tomcatliferay4.2.2/conf下的server.xml,db的連接由HSQL改為SQLServer

          <Resource

          ??? ?? name="jdbc/sbifoodmart"

          ??? ?? auth="Container"

          ??? ?? type="javax.sql.DataSource"

          ??? ?? username="sa"

          ??? ?? password=""

          ??? ?? driverClassName="org.hsqldb.jdbcDriver"

          ??? ?? url="jdbc:hsqldb:hsql://localhost:9001/foodmart"

          ??? />

          ..

          改為:

          <Resource

          ??? ?? name="jdbc/sbifoodmart"

          ??? ?? auth="Container"

          ??? ?? type="javax.sql.DataSource"

          ??? ?? username="sa"

          ??? ?? password="bbbbb"

          ??? ?? driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"

          ??? ?? url="jdbc:sqlserver://localhost;DatabaseName=suggested"

          ??? />

          其余依次類推

          <4>. sqljdbc的驅動包,拷貝到tomcatliferay4.2.2/common/ext下,因為在更換liferay數據庫的時候已完成了這一步,所以在這里這個步驟可以省略。

          以上就是更換SpagoBI1.9.4db的步驟。

          ?

          posted on 2009-05-20 13:23 禮物 閱讀(1528) 評論(0)  編輯  收藏 所屬分類: Liferay
          主站蜘蛛池模板: 沙田区| 防城港市| 偏关县| 广南县| 皮山县| 重庆市| 舞钢市| 哈密市| 缙云县| 龙陵县| 沧州市| 平遥县| 明星| 峨边| 土默特右旗| 嘉禾县| 长垣县| 华阴市| 会东县| 南宁市| 宁津县| 庐江县| 德惠市| 宁河县| 和政县| 陆川县| 土默特右旗| 肥西县| 贞丰县| 鲁山县| 盐津县| 苏尼特右旗| 铜梁县| 孝义市| 阜阳市| 南江县| 平泉县| 太谷县| 突泉县| 南阳市| 渑池县|