Hi,
I'm currently working on a open source project in the domain of geographical data and metadata management called MDWeb as part of my internship. The aim of my internship is to make a JCR abstraction of the current data access layer which is built-up of a PostgreSQL database which store the geographical data and metadata. As I have to conserve the current database structure (which means that I can't use the native JackRabbit data format used by default by the full implementation), I was thinking about writing a SPI connector implementing the org.apache.jackrabbit.spi interfaces, and then, to get a working JCR repository thanks to the jcr2spi package's classes. As databases have a structured (non hierarchical) conceptual model, I was thinking on the better way to implement concepts like 'root', which don't have any equivalent in a structured conceptual model. The solution I was considering involved additional tables for storing this kind of information. What do you think about that ? Does anyone already try and success in making a usable SPI connector to a PostgreSQL database ? Do you think it's a good idea ? (My other idea was to rewrite the current JDBC data access layer using the JCR API with the full implementation of JackRabbit, but it implied to use the JackRabbit native data format). As my first idea was to make only in a first time a level 1 (read only) repository, I was searching some information about which interfaces of the SPI I have to implement (reading the spi2jcr source code and finding it myself is a very difficult task) ? Now from the point of view of the implementation of the SPI interfaces in itself, I was wondering on how to access the database data. Do I have to use JDBC directly or to use a built-in functionality ? Thank you in advance for your help, Pierre
