本文讲解将SpagoBI源码导入到Eclipse,然后自己配置Tomcat7,数据库使用mysql数据库。
一、下载Tomcat7,并修改Tomcat配置文件。
1、下载Tomcat7:http://tomcat.apache.org/
2、修改Tomcat中..\tomcat-7.0.82_SpagoBI\conf路径下的server.xml文件
<!--此路径用于存储SpagoBI服务器在指定目录中查找的资源。这些资源是:QBE数据集、Talend工作、报告中使用的图像、HTML文件、.xls的。或自助服务数据集中使用的.csv文件-->
<Environment name="spagobi_resource_path" type="java.lang.String" value="${catalina.base}/resources"/>
<!--这些类实现了SpagoBI和SSO系统之间的交互-->
<Environment name="spagobi_sso_class" type="java.lang.String" value="it.eng.spagobi.services.common.FakeSsoService"/>
<!--此URL仅用于后端服务、如果SpagoBI内核和某些引擎未安装在同一台服务器上,则必须更改此值-->
<Environment name="spagobi_service_url" type="java.lang.String" value="http://localhost:8080/SpagoBI"/>
<!--这个URL用来在html中产生一些地址。如果SpagoBI服务器和浏览器之间有代理服务器,这很有用-->
<Environment name="spagobi_host_url" type="java.lang.String" value="http://localhost:8080"/>
<!--SpagoBI元数据的连接池-->
<Resource auth="Container" driverClassName="com.mysql.jdbc.Driver"
maxActive="20" maxIdle="10" maxWait="-1" name="jdbc/spagobi" password="123456"
type="javax.sql.DataSource"
url="jdbc:mysql://127.0.0.1:3306/spagobi?useUnicode=true&characterEncoding=UTF-8&useOldAliasMetadataBehavior=true"
username="root" />
3、将一下jar包复制到Tomcat的..\tomcat-7.0.82_SpagoBI\lib目录下
mysql-connector-java-5.0.8-bin.jar(版本太低,必须换成mysql-connector-java-5.1.36.jar)
二、修改eclipse中配置的Tomcat
三、修改SpagoBI工程中的配置文件
1、修改SpagoBI/src/main/resources/hibernate.cfg.xml文件,确保<property name="hibernate.dialect">标签内容为下面的内容。
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
2、修改SpagoBI/src/main/resources/jbpm.hibernate.cfg.xml文件,确保<property name="hibernate.dialect">标签内容为下面的内容。
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
3、修改SpagoBI/src/main/resources/quartz.properties文件
a、将下面注释掉的放开,并修改后面的值
org.quartz.dataSource.quartz.driver = com.mysql.jdbc.Driver
org.quartz.dataSource.quartz.URL = jdbc:mysql://127.0.0.1:3306/spagobi
org.quartz.dataSource.quartz.user = root
org.quartz.dataSource.quartz.password = 123456
org.quartz.dataSource.quartz.maxConnections = 5
b、确保下面的是没被注释,而其他的是被注释了的
org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate
4、修改SpagoBI/src/main/webapp/META-INF/context.xml文件,删除下面的内容
<ResourceLink global="jdbc/foodmart" name="jdbc/foodmart" type="javax.sql.DataSource"/>
四、在mysql数据库中创建一个spagobi数据库,执行以下三个sql文件(前两个为必须执行的文件)