multiple different applications access one odb file


Hi, is it possible to access one odb file from different applications?

What we would like to accomplish. We have one app (runs on Wildlfy server) and it uses xyz.odb DB file. The other two apps would be for API and BI, one would need to read data from the xyz.odb and the other one would be for exposing the DB data via web services.

Do all these apps need to have the same DB schema. The BIRT addon connects to the odb file, could it be adapted to make queries to the database.

The customer would like to use our APP but he asks how the data from the DB can be used to fill its DWH and how  can he integrate (since there is no JDBC or ODBC drivers) with other DB/systems (we have some Web Services within the APP but he would like to do some integration directly)

Does anybody have experience with this.



If you can run all these 3 applications on your web server you should be able to use ObjectDB in embedded mode to access the same database file (because there is only one process).

If your applications run in separate processes and need to access the same database file, you have to use either client-server mode or embedded-server mode.

ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)

Thanks, but does this means that all three apps need to be the same version since, for example, different POJO classes in one APP would result in DB schema change. Actually, we have tried this and it works as you suggested but the problem we have is different as I explained.

When working with Oracle or MS SQL you simply have a JDBC or ODBC driver and can query the database from virtually anywhere. ObjectDB, as it is, is great but only if you treat it as a single app and interact with data through your APPLICATION. In Enterprise environments there are different expectations from a database especially the one who is a central data store.

Is there any plans to create a JDBC driver. Or as a thought could it be possible to wrap the birt addon within a java app and enable through it queries to the database. I think the community would be happy do contribute to the development of this APP.



Basically, ObjectDB doesn't support using different versions of the same entity class with different database schemas on the same database at the same time.

You may, however, try an undocumented system property:

    System.setProperty("", "true");

(set this property before accessing ObjectDB or when running the JVM with -D).

It tells ObjectDB to avoid endless updates of the schema when different applications use different versions of the class.  It may or may not work in your specific use case.

ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)

Thanks for the suggestion, altough it only partialy solves the problem

Are there any plans for JDBC driver, or any other type of general type of quering the database directly and whe  do you plan to have it.

It would make ObjectDB realy enterprise grade solution.



We consider a JDBC driver as a nice to have feature that may be implemented in the future but no concrete plans to implement it yet.

ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)

Post Reply

To post a reply and/or subscribe to update notifications - please login