Shared project

User 2fb71f8a7b

16-01-2009 16:58:03


I have Instant JChem 2.3.1 deployed on Apache Tomcat 5.5 (running under Ubuntu). There is shared project stored in IJChem directory set as default project. Up to this moment everything works great, JChem launches, project opens in mulituser mode , but any changes commited to dataset are being stored localy and so the data have to be updated manualy via copying.

Question #1:

How to automaticaly update project stored on Tomcat server with changess submited on client machines? Would it be better to keep project files over ftp/samba share rather than on Tomcat?

Question #2:

Lets say I want to move the data from the project into mysql database. Is there any "automagic" method to turn files based project into mysql based project?

I tried to transfer existing project into mysql (with JChem Manager) , and copying the data itself works fine, however I couldn't find the way to copy FormViews into mysql. Would there be a hybrid solution? By hybrid I mean:

- adding mysql tables to shared project I want to change

- copying FormViews from "file" table to mysql table

- deleting "file" tables from project

As effect I should have shared project with FormViews stored i.e. on Tomcat server and daa linked to it but stored on mysql server. And I assume that would solve the problem described in Q#1

Thanks you in advance for any help


ChemAxon fa971619eb

16-01-2009 17:28:29

Question 1.

Shared projects are primarily designed for sharing shared databases such as Oracle or MySQL. Whilst they can be used for local databases each user receives a copy of the database and any chages they make are not propagated to other users. You can update the central version (remember to update the version number in the .ijp file) but when this happens the local copies will be overwritten and any changes and forms etc. the user has made will be lost.

So you will see that using local databases as part of a shared project configuration is only really suited for distributing demo data, not true collaboration.

You should NOT keep local databases on a shared network drive. They will not work with simultaneous access by multiple users.

Question 2.

So yes, putting the data in a proper shared database such as Oracle or MySQL is the best option. You will need an IJC enterprise license for this.

Unfortunately there is currently no way to transfer the contents of one database to another, so you need to export the data, import it into the new database and then recreate the data trees, forms etc.

We do plan to provide a more complete data export/import capability in the future that could be used to greatly simplify the transfer of data from one database to another.

I hope this helps clarify the situation.


User 2fb71f8a7b

16-01-2009 18:00:49

Thank you Tim, that pretty much solves my problems