jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Graeme Steyn (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-942) Thoughts on supporting JNDI based Oracle file system/persistence manager implementations
Date Sat, 19 Jun 2010 00:16:24 GMT

    [ https://issues.apache.org/jira/browse/JCR-942?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12880382#action_12880382
] 

Graeme Steyn commented on JCR-942:
----------------------------------

I have run into the same problem when attempting to use Jackrabbit 1.6.1 with SpringSource
tc Server (Tomcat 6.0.25).  If you use any form of wrapped JNDI source, you will experience
this problem, e.g. using C3PO, DBCP, tc Server High Concurrency pool.  Thi sis a bi tfrustrating
as the only way to use Oracle via JNDI with Liferay 5.2 EE SP4 and Jackrabbit is to defined
the JNDI resource as being a type that returns the native connection, e.g. Oracle UCP.

> Thoughts on supporting JNDI based Oracle file system/persistence manager implementations
> ----------------------------------------------------------------------------------------
>
>                 Key: JCR-942
>                 URL: https://issues.apache.org/jira/browse/JCR-942
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-core
>         Environment: Oracle 10g
>            Reporter: Hemanta Gupta
>            Priority: Minor
>         Attachments: OracleJNDIFileSystem.java
>
>
> This may not be relevant for too many people, but I faced a situation where I couldn't
use the stock Oracle file system and persistence manager implementations since we couldn't
place the clear text DB password in repository.xml (for security reasons).
> I tried adapting the classes to use a data-source instead, but this didn't work out immediately
because of the Oracle specific blob handling being performed by these classes. They expect
the connection to be the original native connection returned by the driver, so in the case
of wrapped connections returned by managed data-sources, a ClassCastException is thrown by
oracle.sql.BLOB.createTemporary().
> I finally got things working thanks to the fact that both application servers we support
(JBoss and WebLogic) allow extraction of the native connection from a wrapped managed connection.
Spring's NativeJdbcExtractor interface proved very helpful here; I simply used the right implementation
for extracting the native connection and using it wherever I thought it was required (modified
code to be attached later).
> So to sum up, would it be possible for JR to provide this kind of functionality out-of-the-box?
To be specific, could you provide JNDI based Oracle file system and persistence manager implementations
where we can plug in some kind of native connection extractor, and have the implementations
internally use the native connection for Oracle specific stuff?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message