主要环境:
JBOSS 5.1.0
Orace 10G
Gatein3.1.0-GA
引用一下Gatein 官方使用手册上的原文并简单反译和注解一下大概意思:
概述:主要是说Gatein依赖两个数据库 一个是用来做身份认证的,是用Hibernate的。 另一个用来支持JCR的,用JDBC API 两个都可以支持当前任何已存在的数库。在你第一次改变数据库配置后,Gatein将会自动的生成schema(注解:数据库的方案,就是表,视图等)(你的数据库用户要有这些权限)GateIn3.1假定你的数据库编码方式为latin1,你可能需要改变你的数据库的编码方式来让Gate3.1正常工作(注解:latin1 就是ISO8859-1编码,这个好像是mySql常用的编码方式,在我建立Oracle数据库时并没有这个编码方式,我用的是UTF-8,这个是宽字符集,应该是兼容的,反正到现在还没发现有问题)
2.1.2. Configuring the database for JCR
To configure the database used by JCR you will need to edit the file:
$JBOSS_HOME/server/default/conf/gatein/configuration.properties
For Tomcat, the file is located at
$TOMCAT_HOME/gatein/conf/configuration.properties
gatein.jcr.datasource.driver=org.hsqldb.jdbcDriver
gatein.jcr.datasource.url=jdbc:hsqldb:file:${gatein.db.data.dir}/data/jdbcjcr_${name}
gatein.jcr.datasource.username=sa
gatein.jcr.datasource.password=
gatein.jcr.datasource.driver=com.mysql.jdbc.Driver gatein.jcr.datasource.url=jdbc:mysql://localhost:3306/mygateindb${container.name.suffix} gatein.jcr.datasource.username=gateinuser gatein.jcr.datasource.password=gateinpassword
2.1.2. JCR的数据库配置
修改配置文件:修改其中的驱动,url,用户名,密码,例如:gatein.jcr.datasource.driver=org.hsqldb.jdbcDriver
gatein.jcr.datasource.url=jdbc:hsqldb:file:${gatein.db.data.dir}/data/jdbcjcr_${name}
gatein.jcr.datasource.username=sa
gatein.jcr.datasource.password=....略去说它自已的默认配置方式,重点在下一段里.....说在数据库为HSQL时,Gatein会自动的创建数据库,但是如果是别的数据库那么要手动的建立名为:"jdbcjcr_portal"的数据库(注解:根据上一段所说,应该是库名必须为_portal结尾,在oracle 中 全局数据库名,和SID可以用任意,只要创建一个名为jdbcjcr_portal的schema就可以了,就是建立一个名为jdbcjcr_portal的用户的同时就建立了一个jdbcjcr_portal的schema)(还要创建一个名为"jdbcjcr_sample-portal"的数据库,为GateIn的一个例子使用,但是有些数据库不支持"-"命名数据库,那么就把这个例子删除,位置是$JBOSS_HOME/server/default/deploy/gatein-sample-portal.ear)(注解:oracle 不支持"-"命名的schema,我是直接干掉了这个ear的,简单方便)
要确保你的数据库用户有建表的权限。
要把你的数据库驱动考到$JBOSS_HOME/server/default/lib (你用Tomcat的话是$TOMCAT_HOME/lib)
给出了一个mysql 的例子:
gatein.jcr.datasource.driver=com.mysql.jdbc.Driver gatein.jcr.datasource.url=jdbc:mysql://localhost:3306/mygateindb${container.name.suffix} gatein.jcr.datasource.username=gateinuser gatein.jcr.datasource.password=gateinpassword我的gatein.jcr.config.type=local gatein.jcr.datasource.name=java:jdbcjcr gatein.jcr.datasource.dialect=auto gatein.jcr.datasource.driver=oracle.jdbc.driver.OracleDriver gatein.jcr.datasource.url=jdbc:oracle:thin:@192.168.0.200:1521:dgoral gatein.jcr.datasource.username=jdbcjcr_portal gatein.jcr.datasource.password=XXXX
$JBOSS_HOME/server/default/conf/gatein/configuration.properties
For Tomcat, the file is located at
$TOMCAT_HOME/gatein/conf/configuration.properties
You will find the same kind of configuration as in jcr-configuration.xml:
gatein.idm.datasource.driver=org.hsqldb.jdbcDriver
gatein.idm.datasource.url=jdbc:hsqldb:file:${gatein.db.data.dir}/data/jdbcidm_${name}
gatein.idm.datasource.username=sa
gatein.idm.datasource.password
2.1.3. 配置身份认证的数据库
还是上面的那个配置文件:
例子:(注解:这个我和上面那个用的同一个库,粘帖下就行了)
gatein.idm.datasource.driver=org.hsqldb.jdbcDriver
gatein.idm.datasource.url=jdbc:hsqldb:file:${gatein.db.data.dir}/data/jdbcidm_${name}
gatein.idm.datasource.username=sa
gatein.idm.datasource.password
我的
# IDM
gatein.idm.datasource.name=java:jdbcidm
gatein.idm.datasource.driver=oracle.jdbc.driver.OracleDriver
gatein.idm.datasource.url=jdbc:oracle:thin:@192.168.0.200:1521:dgoral
gatein.idm.datasource.username=jdbcjcr_porta
gatein.idm.datasource.password=XXXX
看完上面的也就基本可以弄好了。
附上我建立用户及
schema的SQL语句:
$JBOSS_HOME/server/default/conf/gatein/configuration.properties
For Tomcat, the file is located at
$TOMCAT_HOME/gatein/conf/configuration.properties
You will find the same kind of configuration as in jcr-configuration.xml:
gatein.idm.datasource.driver=org.hsqldb.jdbcDriver gatein.idm.datasource.url=jdbc:hsqldb:file:${gatein.db.data.dir}/data/jdbcidm_${name} gatein.idm.datasource.username=sa gatein.idm.datasource.password
2.1.3. 配置身份认证的数据库
还是上面的那个配置文件:
例子:(注解:这个我和上面那个用的同一个库,粘帖下就行了)gatein.idm.datasource.driver=org.hsqldb.jdbcDriver gatein.idm.datasource.url=jdbc:hsqldb:file:${gatein.db.data.dir}/data/jdbcidm_${name} gatein.idm.datasource.username=sa gatein.idm.datasource.password我的# IDM gatein.idm.datasource.name=java:jdbcidm gatein.idm.datasource.driver=oracle.jdbc.driver.OracleDriver gatein.idm.datasource.url=jdbc:oracle:thin:@192.168.0.200:1521:dgoral gatein.idm.datasource.username=jdbcjcr_porta gatein.idm.datasource.password=XXXX
看完上面的也就基本可以弄好了。
附上我建立用户及 schema的SQL语句: