-
1. Re: GateIn Portal on PostgreSql
willojavier Apr 7, 2010 10:37 AM (in response to willojavier)hi all.
I read and I could connect GateIn with PostreSQL.
to follow the steps below:
1. name of my database: jdbcjcr
2. Username: test
3. password: test
The following files were modified:
-> configuration.properties (server / default / conf / gatein)
# Data
gatein.data.dir=${jboss.server.data.dir}/gatein# DB
gatein.db.data.dir=${gatein.data.dir}/db# JCR
gatein.jcr.config.type=local
gatein.jcr.datasource.name=java:jdbcjcr
gatein.jcr.datasource.dialect=autogatein.jcr.datasource.driver=org.postgresql.Driver
gatein.jcr.datasource.url=jdbc:postgresql://localhost:5432/jdbcjcr
gatein.jcr.datasource.username=prueba
gatein.jcr.datasource.password=pruebagatein.jcr.data.dir=${gatein.data.dir}/jcr
gatein.jcr.storage.data.dir=${gatein.jcr.data.dir}/values
gatein.jcr.index.data.dir=${gatein.jcr.data.dir}/lucene
gatein.jcr.index.changefilterclass=org.exoplatform.services.jcr.impl.core.query.DefaultChangesFilter
# IDM
gatein.idm.datasource.name=java:jdbcidm->jcr-configuration.properties (server/default/deploy/gatein.ear/02portal.war/web-inf/conf/jcr)
<external-component-plugins>
<target-component>org.exoplatform.services.naming.InitialContextInitializer</target-component>
......................
<properties-param>
<name>ref-addresses</name>
<description>ref-addresses</description>
<property name="driverClassName" value="org.postgresql.Driver"/>
<property name="url" value="jdbc:postgresql://localhost:5432/jdbcjcr"/>
<property name="username" value="prueba"/>
<property name="password" value="prueba"/>
</properties-param>
</init-params>
</component-plugin>
</external-component-plugins>
-> idm-configuration.properties (server/default/deploy/gatein.ear/02portal.war/web-inf/conf/organization)this has the same configuration as the previous file (jcr-configuration.properties)
I hope this is helpful to someone. If you encounter any problems post them.
I hope this is helpful to someone. If you encounter any problems post them.
Thanks to all -
2. Re: GateIn Portal on PostgreSql
ebross Apr 9, 2010 1:31 PM (in response to willojavier)Hi wilson javier,
I don't think it is a good idea to hard-code the 'ref-addresses' values in the 'jcr-configuration.xml' (found in server/default/deploy/gatein.ear/02portal.war/web-inf/conf/jcr).
It will pick up these values from the 'configuration.properties' (found in server/default/conf/gatein).
Also note the following:
1. In the configuration.properties, you might want to set:
gatein.idm.datasource.dialect=pgsql
2. In the repository-configuration.xml (found in server/default/deploy/gatein.ear/02portal.war/web-inf/conf/jcr), add to each '<lock-manager class>' the following line:
<property name="jbosscache-cl-cache.jdbc.node.type" value="bytea" />PostgreSQL uses 'bytea' and not 'blob', which is the GateIn default, otherwise, you will have:
Database exception. org.postgresql.util.PSQLException: ERROR: type "blob" does not exist.Cheers
'configuration-configuration.xml' changed to 'repository-configuration.xml'
-
3. Re: GateIn Portal on PostgreSql
willojavier Apr 9, 2010 11:08 AM (in response to ebross)hi benjamin.
Thanks for your response.
I work with Gatein on Jboss.
can not do this step 2 because I can not find the file configuration.xml in the path that you show:
2. In the configuration-configuration.xml (found in server/default/deploy/gatein.ear/02portal.war/web-inf/conf/jcr), add to each '<lock-manager class>' the following line:
I do not know if this doing something wrong
another question.
assuming that I properly connected the GateIn with PostgreSQL,
which is the number of tables that should show my database?thank for all
-
4. Re: GateIn Portal on PostgreSql
ebross Apr 9, 2010 1:37 PM (in response to willojavier)Hi Wilson,
There is no 'configuration-configuration.xml' -- my mistake. You want 'repository-configuration.xml' (found in server/default/deploy/gatein.ear/02portal.war/web-inf/conf/jcr). Inside, you will find something like:
<lock-manager class=...>
<properties>
<property name=... />
<property name="jbosscache-cl-cache.jdbc.table.create" value="true" />
<property name="jbosscache-cl-cache.jdbc.table.drop" value="false" />
<property name="jbosscache-cl-cache.jdbc.table.primarykey" value="pk" />
<property name="jbosscache-cl-cache.jdbc.fqn.column" value="fqn" />
<property name="jbosscache-cl-cache.jdbc.node.column" value="node" />
<property name="jbosscache-cl-cache.jdbc.node.type" value="bytea" /> < ------NOTICE THE value=bytea
<property name="jbosscache-cl-cache.jdbc.parent.column" value="parent" />
<property name="jbosscache-cl-cache.jdbc.datasource" value="${gatein.jcr.datasource.name}${container.name.suffix}" />
</properties>There are five of them to update. Just add to each one of them the entry:
<property name="jbosscache-cl-cache.jdbc.node.type" value="bytea" />
>>assuming that I properly connected the GateIn with PostgreSQL,
>>which is the number of tables that should show my database?1. Well since you have 'jdbcjcr' in your 'configuration.properties' you should have that database, but my advice is that you create it in PostgreSQL yourself. And when you restart GateIn, you should see 17 tables in the jdbcjcr database.
2, Also don't forget that you need to do:
<property name="url" value="jdbc:postgresql://localhost:5432/jdbcjcr_${name}/> <------ NOTICE THE '_${name}' at the end.(i) In mine, I am using '_portal' instead of '_${name}' because of errors thrown when I use '_${name}'. See the GateIn Reference Guide @ 2.1.2. "Configuring the database for JCR", it will explain to you why you need the suffix.
(ii) You also need to create a database for your IDM. If your have in 'configuration.properties' something like:
gatein.idm.datasource.url=jdbc:postgresql://localhost:5432/jdbcidm_${name}
Then when you restart GateIn, you will have 17 tables in this database also.
Cheers