Hi, As i said, may be it comes from the fact that the orginial ddl file ( mysql.ddl) uses CHAR type for table columns. I replaced them by VARCHAR2 columns. Have your tried the same, or have you let let the CHAR datatype ?
I'll try to get back to CHAR datatype and try to run jLibrary with it.I'll tell you the result. 2005/12/20, Antonis Tsaltas <[EMAIL PROTECTED]>: > > nicolas.jouanin wrote: > > > 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 > > > >> > > > Hi Nicolas, > > I tried to do what you described in your mail from scratch, but the > exception that I received during configuration of the repository is the > following, which is due to Oracle's aproach of treating NULL and empty > string in the same way (for the root node tries to insert '/' as path > and '' as name where it fails): > > org.apache.jackrabbit.core.config.ConfigurationException: File system > initialization failure.: failed to initialize file system: failed to > create folder entry: /: ORA-01400: cannot insert NULL into > ("RABBIT"."REP_FSENTRY"."FSENTRY_NAME") > : failed to initialize file system: failed to create folder entry: /: > ORA-01400: cannot insert NULL into ("RABBIT"."REP_FSENTRY"."FSENTRY_NAME") > > at > org.apache.jackrabbit.core.config.FileSystemConfig.init( > FileSystemConfig.java:61) > at > org.apache.jackrabbit.core.config.RepositoryConfig.init( > RepositoryConfig.java:250) > at > org.apache.jackrabbit.core.config.RepositoryConfig.create( > RepositoryConfig.java:136) > at > org.apache.jackrabbit.core.config.RepositoryConfig.create( > RepositoryConfig.java:78) > at > org.apache.jackrabbit.core.jndi.BindableRepository.init( > BindableRepository.java:122) > at > org.apache.jackrabbit.core.jndi.BindableRepository.create( > BindableRepository.java:110) > at > org.apache.jackrabbit.core.jndi.RegistryHelper.registerRepository( > RegistryHelper.java:57) > at ed.doc.mgt.test.RepositoryManager.<init>(RepositoryManager.java:82) > at > ed.doc.mgt.test.RepositoryManager.configRep(RepositoryManager.java:465) > at ed.doc.mgt.test.RepositoryManager.main(RepositoryManager.java:443) > Caused by: org.apache.jackrabbit.core.fs.FileSystemException: failed to > initialize file system: failed to create folder entry: /: ORA-01400: > cannot insert NULL into ("RABBIT"."REP_FSENTRY"."FSENTRY_NAME") > > at > org.apache.jackrabbit.core.fs.db.DbFileSystem.init(DbFileSystem.java:344) > at > org.apache.jackrabbit.core.config.FileSystemConfig.init( > FileSystemConfig.java:55) > ... 9 more > Caused by: org.apache.jackrabbit.core.fs.FileSystemException: failed to > create folder entry: /: ORA-01400: cannot insert NULL into > ("RABBIT"."REP_FSENTRY"."FSENTRY_NAME") > > at > org.apache.jackrabbit.core.fs.db.DbFileSystem.createDeepFolder( > DbFileSystem.java:1256) > at > org.apache.jackrabbit.core.fs.db.DbFileSystem.verifyRoodExists( > DbFileSystem.java:1225) > at > org.apache.jackrabbit.core.fs.db.DbFileSystem.init(DbFileSystem.java:338) > ... 10 more > Caused by: java.sql.SQLException: ORA-01400: cannot insert NULL into > ("RABBIT"."REP_FSENTRY"."FSENTRY_NAME") > > >