June 06, 2012

Liferay - Steps to hooking up Jackrabbit to MySQL


1> Edit the portal-ext.properties to include

### jackrabbit entry Start
jcr.initialize.on.startup=true
jcr.jackrabbit.repository.root=/opt/jboss/data/jackrabbit
jcr.jackrabbit.config.file.path=${jcr.jackrabbit.repository.root}/repository.xml
jcr.jackrabbit.repository.home=${jcr.jackrabbit.repository.root}/home
jcr.jackrabbit.credentials.username=none
jcr.jackrabbit.credentials.password=none
dl.hook.impl=com.liferay.documentlibrary.util.JCRHook
### jackrabbit entry Ends

2>repository.xml
<?xml version="1.0"?>

<Repository>  
<!--
Database File System (Cluster Configuration)

This is sample configuration for mysql persistence that can be used for
clustering Jackrabbit. For other databases, change the connection,
credentials, and schema settings.
-->

<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
<param name="driver" value="com.mysql.jdbc.Driver"/>
<param name="url" value="jdbc:mysql://localhost:3306/jcr" />
<param name="user" value="liferay" />
<param name="password" value="" />
<param name="schema" value="mysql"/>
<param name="schemaObjectPrefix" value="J_R_FS_"/>
</FileSystem>

<Security appName="Jackrabbit">
<AccessManager class="org.apache.jackrabbit.core.security.SimpleAccessManager" />
<LoginModule class="org.apache.jackrabbit.core.security.SimpleLoginModule">
<param name="anonymousId" value="anonymous" />
</LoginModule>
</Security>
<Workspaces rootPath="${rep.home}/workspaces" defaultWorkspace="liferay" />
<Workspace name="${wsp.name}">
<!--
Database File System and Persistence (Cluster Configuration)

This is sample configuration for mysql persistence that can be used for
clustering Jackrabbit. For other databases, change the  connection,
credentials, and schema settings.
-->

<PersistenceManager class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
<param name="driver" value="com.mysql.jdbc.Driver" />
<param name="url" value="jdbc:mysql://localhost:3306/jcr" />
<param name="user" value="liferay" />
<param name="password" value="" />
<param name="schema" value="mysql" />
<param name="schemaObjectPrefix" value="J_PM_${wsp.name}_" />
<param name="externalBLOBs" value="false" />
</PersistenceManager>
<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
<param name="driver" value="com.mysql.jdbc.Driver"/>
<param name="url" value="jdbc:mysql://localhost:3306/jcr" />
<param name="user" value="liferay" />
<param name="password" value="" />
<param name="schema" value="mysql"/>
<param name="schemaObjectPrefix" value="J_FS_${wsp.name}_"/>
</FileSystem>
</Workspace>
<Versioning rootPath="${rep.home}/version">
           
<!--
Database File System and Persistence (Cluster Configuration)

This is sample configuration for mysql persistence that can be used for
clustering Jackrabbit. For other databases, change the connection,
credentials, and schema settings.
-->

<FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
<param name="driver" value="com.mysql.jdbc.Driver"/>
<param name="url" value="jdbc:mysql://localhost:3306/jcr" />
<param name="user" value="liferay" />
<param name="password" value="" />
<param name="schema" value="mysql"/>
<param name="schemaObjectPrefix" value="J_V_FS_"/>
</FileSystem>
<PersistenceManager class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
<param name="driver" value="com.mysql.jdbc.Driver" />
<param name="url" value="jdbc:mysql://localhost:3306/jcr" />
<param name="user" value="liferay" />
<param name="password" value="" />
<param name="schema" value="mysql" />
<param name="schemaObjectPrefix" value="J_V_PM_" />
<param name="externalBLOBs" value="false" />
</PersistenceManager>
</Versioning>

<!--
Cluster Configuration

This is sample configuration for mysql persistence that can be used for
clustering Jackrabbit. For other databases, change the  connection,
credentials, and schema settings.
-->

    <Cluster id="worker1" syncDelay="5">
<Journal class="org.apache.jackrabbit.core.journal.DatabaseJournal">
<param name="revision" value="${rep.home}/revision"/>
<param name="driver" value="com.mysql.jdbc.Driver"/>
<param name="url" value="jdbc:mysql://localhost:3306/jcr"/>
<param name="user" value="liferay"/>
<param name="password" value=""/>
<param name="schema" value="mysql"/>
<param name="schemaObjectPrefix" value="J_C_"/>
</Journal>
    </Cluster>
</Repository>
3> Restart Liferay, for MySQL the table lportal should automatically be created.

No comments:

Post a Comment