Hi,

 

I read a previous thread concerning the use of Oracle with JackRabbit (see below for copy).

As written, it seems not so simple to make it work.

Nevertheless, I wrote an oracle.ddl file (attached to this email) based on mysql.ddl where I simply replaced some data types:

-          longblob -> blob

-          char -> varchar2 (Oracle doesn’t like char)

 

Then I configured repository.xml correctly and used this configuration to run this famous jLibrary software. To my surprise it worked, and managed to create a repository, and add some nodes  : some jlibrary folders, and some PDF documents node.

 

So , it may be need some more testing ; has someone achieved to make jackrabbit run with Oracle, let me know.

 

Regards, Nicolas.

 

 

 

 

Original message:

 

                       

Antonis Tsaltas            

<[EMAIL PROTECTED]>to jackrabbit-dev

             More options     Dec 15 (3 days ago)

Dear all,

 

I am trying to use oracle with jackrabbit and the steps I have followed

are the following:

 

1) I have created the ddl files needed for creating the schemas with

oracle database similar to the existing ones and add them to the

appropriate package in the jackrabbit jar generated after the build.

However, when I tried to run a sample application I got nested

exceptions during the configuration of the repository and more specific

during the insertion of the root node due to the case that Oracle is

treating an emptry string and null as the same and the fsname of the

root node is empty string.

 

2) Next I tried to allow nullable values for the fsname as this will

only be the case for the root node and there will be no manual updates

to the repository. At this point it failed again when it tried to add an

entry '/meta' in fsentries table when it was checking if the parent of

this node exists (which is root node '/' ). There it performs the

following query:

 

select 1 from REP_FSENTRY where FSENTRY_PATH = '/' and

FSENTRY_NAME is null

 

which is in oracle equivalent with this:

 

select 1 from REP_FSENTRY where FSENTRY_PATH = '/' and

FSENTRY_NAME=''

 

and then it tries to insert the root node again but there is the logical

constraint:

 

create unique index ${schemaObjectPrefix}FSENTRY_IDX on

${schemaObjectPrefix}FSENTRY

 (FSENTRY_PATH, FSENTRY_NAME).

 

Are there any suggestion or does anyone know if jackrabbit can work fine

with oracle db server?

 

Thanx

 

 

 

 

 

 

 

 

 

 

 

 Stefan Guggisberg     

to jackrabbit-dev

             More options     Dec 15 (3 days ago)

hi antonis

- Show quoted text -

 

well there's no reason why that shouldn't be the case in general.

but because of oracle's rather exotic and non-standard 'feature' of treating

empty values as null you will probably have to write some oracle specific

code :(

 

cheers

stefan

 

 

 

> 

> Thanx

> 

Reply via email to