[
https://issues.apache.org/jira/browse/JCR-2664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13252759#comment-13252759
]
SunGard Global Services Germany commented on JCR-2664:
------------------------------------------------------
Rating this +1 as it is quite annoying to use self-patched Jackrabbit JARs.
As this is an easy fix, can this be applied in the near future?
> OraclePersistenceManager does not work with JNDI resource
> ---------------------------------------------------------
>
> Key: JCR-2664
> URL: https://issues.apache.org/jira/browse/JCR-2664
> Project: Jackrabbit Content Repository
> Issue Type: Bug
> Components: jackrabbit-core
> Affects Versions: 1.6.1, 1.6.2, 2.1
> Environment: Oracle 11g Rel1, SpringSource tc Server 2.0.0.SR01, JDK
> 1.6.0 Update 20, LIferay 5.2 EE SP4, Jackrabbit 1.6.1.
> Reporter: Graeme Steyn
> Attachments: OraclePersistenceManager.patch
>
>
> The OraclePersistenceManager will not work correctly with a JNDI resource due
> to the default values provided in the constructor. I noticed this problem
> when configuring LIferay 5.2 EE SP4 (which uses jackrabbit-core.jar v 1.6.1).
> This problem has been touched on in different areas in JCR-1703.
> Patch:
> Index:
> jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/db/OraclePersistenceManager.java
> ===================================================================
> ---
> jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/db/OraclePersistenceManager.java
> (revision 956161)
> +++
> jackrabbit-core/src/main/java/org/apache/jackrabbit/core/persistence/db/OraclePersistenceManager.java
> (working copy)
> @@ -107,8 +107,6 @@
> schema = "oracle";
> driver = "oracle.jdbc.OracleDriver";
> schemaObjectPrefix = "";
> - user = "";
> - password = "";
> initialized = false;
> }
>
> The patch attached basically allows the following configuration in
> repository.xml to work correctly.
> <?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.OracleFileSystem">
> <param name="driver" value="javax.naming.InitialContext"/>
> <param name="url" value="java:comp/env/jdbc/LiferayPool"/>
> <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.persistence.db.OraclePersistenceManager">
> <param name="driver" value="javax.naming.InitialContext" />
> <param name="url" value="java:comp/env/jdbc/LiferayPool"/>
> <param name="schemaObjectPrefix" value="J_PM_${wsp.name}_" />
> <param name="schema" value="oracle"/>
> <param name="externalBLOBs" value="false" />
> </PersistenceManager>
> <FileSystem
> class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
> <param name="driver" value="javax.naming.InitialContext"/>
> <param name="url" value="java:comp/env/jdbc/LiferayPool"/>
> <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.OracleFileSystem">
> <param name="driver" value="javax.naming.InitialContext"/>
> <param name="url" value="java:comp/env/jdbc/LiferayPool"/>
> <param name="schemaObjectPrefix" value="J_V_FS_"/>
> </FileSystem>
> <PersistenceManager
> class="org.apache.jackrabbit.core.persistence.db.OraclePersistenceManager">
> <param name="driver" value="javax.naming.InitialContext" />
> <param name="url" value="java:comp/env/jdbc/LiferayPool"/>
> <param name="schemaObjectPrefix" value="J_V_PM_" />
> <param name="schema" value="oracle"/>
> <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="node1" syncDelay="5">
> <Journal
> class="org.apache.jackrabbit.core.journal.OracleDatabaseJournal">
> <param name="revision" value="${rep.home}/revision.log" />
> <param name="driver" value="javax.naming.InitialContext" />
> <param name="url" value="java:comp/env/jdbc/LiferayPool"/>
> <param name="databaseType" value="oracle"/>
> </Journal>
> </Cluster>
> </Repository>
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira