Home » Modeling » EMF » CDO Usage with Oracle(CDO Usage with Oracle Database Express Edition 11g)
CDO Usage with Oracle [message #1395210] |
Sun, 06 July 2014 11:07  |
Eclipse User |
|
|
|
Hello,
is it possible to use CDO with an Oracle Database Express Edition 11g, where objects are stored as xml-files?
I could not find anywhere if an CDO Oracle driver exists?
I need it to synchronise of EMF models in an existant application.
Thanks for your help,
Jeff
|
|
| | | | | | |
Re: CDO Usage with Oracle [message #1395701 is a reply to message #1395676] |
Mon, 07 July 2014 05:14   |
Eclipse User |
|
|
|
Hi Eike,
it is not a special Oracle XML DB. Sorry , as a newbie I should write concreter. It is an Oracle XE 11g DB, so there exists a JDBC interface for that. In this Oracle XE 11g I have an "Objects" Table.In this table my graphics, which I generate with GEF editors, are stored as variables of XMLTYPE datatype. In this XML all generated objects of my graphic are described with their name,class, position, colour, properties and so on. My goal now is to be able to work on the same graphics from two different clients so that each client gets live the changes of the other client.
As far as I understood Leonid for this scenario I won`t be able to use CDO, please correct me if I am wrong. I would also appreciate any advice of the best solution for my problem, because at the moment the onyl Solution I see is to addListeners to catch every change, then save my graphics, catch the change in DB, broadcast this change to all clients and reload the graphics (or the changed part of them) on the side of the other client (if he has the same graphics open), but it would more of a quick and dirty solution, because I am pretty sure I won't be able to handle all conflicts and so on properly, so CDO would be a much nicer solution 
Thanks,
Jeff
|
|
|
Re: CDO Usage with Oracle [message #1395713 is a reply to message #1395701] |
Mon, 07 July 2014 05:31  |
Eclipse User |
|
|
|
Am 07.07.2014 11:14, schrieb Jeff Bender:
> Hi Eike,
>
> it is not a special Oracle XML DB. Sorry , as a newbie I should write concreter. It is an Oracle XE 11g DB, so there
> exists a JDBC interface for that. In this Oracle XE 11g I have an "Objects" Table.In this table my graphics, which I
> generate with GEF editors, are stored as variables of XMLTYPE datatype.
I wonder what makes this XMLTYPE any different from a String/VARCHAR.
> In this XML all generated objects of my graphic are described with their name,class, position, colour, properties and
> so on.
So from an EMF perspective it's just a big string.
> My goal now is to be able to work on the same graphics from two different clients so that each client gets live the
> changes of the other client.
The most important question is at what granule you want to distribute change? CDO generally identifies (and transports)
change at an EStructuralFeature granule. Most CDO stores, including the DBStore, store changes in an Object granule,
i.e., a new object revisions is written if at least one feature is changed.
That means you can not collaborate properly on your graphics if you store them in a single feature each. Each change to
such a graphic would likely result in merge conflicts at the other side(s).
> As far as I understood Leonid for this scenario I won`t be able to use CDO, please correct me if I am wrong. I would
> also appreciate any advice of the best solution for my problem, because at the moment the onyl Solution I see is to
> addListeners to catch every change, then save my graphics, catch the change in DB, broadcast this change to all
> clients and reload the graphics (or the changed part of them) on the side of the other client (if he has the same
> graphics open), but it would more of a quick and dirty solution, because I am pretty sure I won't be able to handle
> all conflicts and so on properly, so CDO would be a much nicer solution :)
I think no matter where you store your graphics you'll have a collaboration/distribution problem if you don't model how
the smallest units of these graphics are represented. But if you do that I see nothing that should prevent CDO from
being useful.
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Goto Forum:
Current Time: Tue Jul 22 17:45:02 EDT 2025
Powered by FUDForum. Page generated in 0.24504 seconds
|