環境細節:
作業系統: Windows XP
應用伺服器: tomcat-5.5.20
資料庫: Oracle 10g
建構工具: Apache Ant 1.7.0 ;Java SE 1.5.0_14
=======================================================================================
逐漸訓示
1、建立一個檔案夾結構如下:
D:/Pentaho
D:/Pentaho/appserver
D:/Pentaho/pentaho-data
D:/Pentaho/pentaho-solutions
D:/Pentaho/work
2、下載下傳并解壓'Pentaho Sample Data'壓縮檔案到'D:/Pentaho/pentaho-data' 檔案夾
下載下傳并解壓tomcat-5.5.20,安裝在'D:/Pentaho/appserver'.
3、下載下傳并解壓'Pentaho Solutions'壓縮檔案到'D:/Pentaho/pentaho-solutions'檔案夾。指定的Oracle delegate在quartz.properties檔案,你可以在pentaho-solutions/system/quartz目錄找到這個檔案。全部替換"stdjdbcdelegate"為"oracledelegate"。
4、下載下傳并解壓'Pentaho J2EE Deployment Distribution'壓縮檔案到'D:/Pentaho/work'檔案夾
5、用'Oracle Database Configuration Assistant'建立一個資料庫SID為'ora10g'。
6、打開'D:/Pentaho/pentaho-data/oracle/sampledata-ora.sql'檔案,建立表空間,建立表
Add the grant commands to pentaho_role to :
GRANT DBA, CONNECT, RESOURCE, CREATE VIEW, CREATE PUBLIC SYNONYM TO pentaho_role WITH ADMIN OPTION;
GRANT ALTER ANY ROLE, ALTER ANY SEQUENCE, ALTER ANY TABLE, ALTER TABLESPACE,ALTER ANY TRIGGER, COMMENT ANY TABLE, CREATE ANY SEQUENCE, CREATE ANY TABLE,CREATE ANY TRIGGER, CREATE ROLE, CREATE TABLESPACE, CREATE USER, DROP ANY SEQUENCE, DROP ANY TABLE, DROP ANY TRIGGER, DROP TABLESPACE, DROP USER, DROP ANY ROLE, GRANT ANY ROLE, INSERT ANY TABLE, SELECT ANY TABLE, UPDATE ANY TABLE TO pentaho_role;
7、複制ojdbc14.jar、commons-pool-1.2.jar、commons-dbcp-1.2.1.jar、classes12.jar、orai18n.jar到D:/Pentaho/appserver/apache-tomcat-5.5.20/common/lib
8、hibernate.cfg.xml在'D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863/pentaho-res/hibernate/oracle10g'檔案夾,修改SID'ora10g'和'hibernate/password'.
9、複制 D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863/pentaho-res/hibernate/hsqldb/org 檔案夾到 D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863/pentaho-res/hibernate/oracle10g檔案夾.
在 D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863/pentaho-res/hibernate/oracle10g檔案夾,找到hibernate.cfg.xml檔案,修改jdbc:oracle:oci:localhost:1521:...改為jdbc:oracle:thin:localhost:1521:... driverClassName:oracle.jdbc.OracleDriver修改為oracle.jdbc.driver.OracleDriver.
10、修改資料源檔案(-ds.xml),在D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863/pentaho-res/jboss/datasources/oracle10g. 需要把SID和使用者名稱及密碼更改。
quartz/password for quartz-ds.xml, pentaho_user/password for shark-ds.xml and sampledata_admin-ds.xml, hibernate/password for Pentahohibernate-ds.xml and sampledata/password for 其他.
修改 jdbc:oracle:oci:localhost:1521:... 為 jdbc:oracle:thin:localhost:1521:... driverClassName :oracle.jdbc.OracleDriver 改為 oracle.jdbc.driver.OracleDriver
11、到D:/Pentaho/pentaho-solutions/system目錄,打開pentaho.xml檔案.
確定下列路線是注釋掉的:
org.pentaho.repository.filebased.solution.SolutionRepository
確定下列路線不是注釋掉的:
com.pentaho.repository.dbbased.solution.SolutionRepository
12、找到在'D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863/pentaho-third-party'目錄下的'licenses'檔案夾,從'pentaho-third-party/licenses'檔案夾複制所有的'*.license.txt'檔案,到'pentaho-third-party'檔案夾.
13、下載下傳Build.xml和Build.properties檔案
Build.xml: http://wiki.pentaho.org/download/attachments/3440812/build.xml
Build.properties: http://wiki.pentaho.org/download/attachments/3440812/build.properties
在build.properties,修改oracle.databaseJdbcUrl=jdbc:oracle:oci:@ :1521:... 為 oracle.databaseJdbcUrl=jdbc:oracle:thin:@ :1521:...
打開指令提示符并入到檔案夾'D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863' ,運作ant war-pentaho-tomcat-oracle
14、産生pentaho.war檔案,在D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863/build/pentaho-wars/tomcat/portal/oracle10g.
15、Make your way into D:/Pentaho/appserver/stringbeans-3.5-beta_tomcat-5.5.20/apache-tomcat-5.5.20/bin and modify startup.bat as follows:
rem JVM memory allocation pool parameters. Modify as appropriate.
set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx512m -XX:MaxPermSize=256m
16、部署war檔案進Tomcat
複制pentaho.war檔案,從D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863/build/pentaho-wars/tomcat/portal/oracle10g 到 D:/Pentaho/appserver/apache-tomcat-5.5.20/webapps;從D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863/build/pentaho-wars 複制 pentaho-portal-layout.war, pentaho-style.war 還有 sw-style.war 到 D:/Pentaho/appserver/apache-tomcat-5.5.20/webapps
17、複制hsqldb.jar, 從'D:/Pentaho/work/pentaho_j2ee_deployments-1.6.0.GA.863/pentaho-third-party'目錄到D:/Pentaho/appserver/stringbeans-3.5-beta_tomcat-5.5.20/apache-tomcat-5.5.20/common/endorsed
18、打開context.xml檔案, 在D:/Pentaho/appserver/apache-tomcat-5.5.20/conf目錄
19、添加下面的XML到context.xml
在 和 之間
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"
maxWait="10000" username="hibernate" password="timesnet"
driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"
maxWait="10000" username="quartz" password="timesnet"
driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
factory="org.apache.commons.dbcp.BasicDataSourceFactory" maxActive="20" maxIdle="5"
maxWait="10000" username="shark" password="timesnet" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
maxIdle="5" maxWait="10000" username="sampledata" password="timesnet"
factory="org.apache.commons.dbcp.BasicDataSourceFactory" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.18.141:1521:ora10g" />
20、複制context.xml,在D:/Pentaho/appserver/apache-tomcat-5.5.20/conf/Catalina/localhost,重命名為pentaho.xml.
21、修改web.xml
base-url
http://localhost:8080/pentaho/
中的localhost成伺服器的ip位址
22、開啟Tomcat伺服器,通路http://localhost:8080/pentaho
--------------------------------------------------------------------------------
pentaho.xml中的ISolutionRepository有兩種設定方式:org.pentaho.repository.filebased.solution.SolutionRepository和com.pentaho.repository.dbbased.solution.SolutionRepository
--liushixin123, 21-二月-2008
mondrian + oracle 部署foodmart demo
1 . 首先,下載下傳mondrian的源檔案(不是derby的那一個)
2 . 把解壓縮後的lib / mondrian.war 檔案copy 到tomcat 的webapps 檔案夾下.讓它自動解壓
3 . 打開指令行,進入mondrian 的 lib 目錄, 執行以下指令
java -cp "mondrian.jar;log4j-1.2.9.jar;eigenbase-resgen.jar;eigenbase-xom.jar;ojdbc14.jar;eigenbase-properties.jar" mondrian.test.loader.MondrianFoodMartLoader -verbose -tables -data -jdbcDrivers="oracle.jdbc.driver.OracleDriver" -inputFile=FoodMartCreateData.sql -outputJdbcURL="jdbc:oracle:thin:dbusername/[email protected]_host:1521:dbname"
注意mondrian需要oracle 的ojdbc14驅動,不是class12.jar ,它在oracle_home/jdbc/lib/ojdbc.jar 檔案夾下,如果沒有可以到oracle官方網站去下.位址是http://download.oracle.com/otn/utilities_drivers/jdbc/9201/ojdbc14.jar 其中inputFile的位置指定到你FoodMartCreateData.sql 的位置,我是已經把它放到了lib 目錄下. 詳細的參數可以到http://mondrian.pentaho.org/documentation/installation.php 看看.
4 . 這個時候你的資料庫已經建立好了,其中每一個table都是有資料的. 注意所有的table 和 column 都是用雙引号括起來的.
5 . 修改WEB-INF / mondrian.properties 和 DataSource.xml 檔案 , 指定其中的資料源. Provider=mondrian; ---Jdbc=jdbc:oracle:thin:/ @//: /; ---JdbcDrivers=oracle.jdbc.OracleDriver; Provider=mondrian;Jdbc=jdbc:oracle:thin:PENTAHO/[email protected]:1521:ora10g;JdbcDrivers=sun.jdbc.odbc.JdbcOdbcDriver,oracle.jdbc.driver.OracleDriver; Catalog=/WEB-INF/queries/FoodMart.xml; 你的jdbc驅動應該已經copy到lib目錄下了,把其中的< >内的替換成自己的資料源.
6 . 修改WEB-INF / queries 下的arrows.jsp , colors.jsp , fourhier.jsp , mondrian.jsp , testquery.jsp 檔案中的資料源部分,跟mondrian.properties檔案是一樣的.
7 .這個時候打開你的tomcat , 讓浏覽器指向localhost:8080/mondrian ,你可以看到有8個 mondrian 的example ,其中最下面兩個好像不能進,報ODBC錯誤,可能還需要其他地方的配置,其餘都是可以進的.
8. 至于上面有兩個頁面報錯的解決:修改WEB-INF / queries 下的testrole.jsp與第6步一樣,另外,還要對datasources.xml作修改,如下: Provider=mondrian;Jdbc=jdbc:oracle:thin:PENTAHO/[email protected]:1521:ora10g;JdbcUser=PENTAHO;JdbcPassword=timesnet;JdbcDrivers=oracle.jdbc.OracleDriver;Catalog=/WEB-INF/queries/FoodMart.xml
9。mondrian 連接配接 oracle 完成!

本文用 菊子曰釋出