Hello Jeff,
The applyChanges command is meant to process the change summary
associated with a modified graph of SDO's and generate appropriate
insert/update/delete statements. For this to work the graph must
originate from the database you are trying to update. So, for example,
a client might request a graph based on some query, then add some
DataObject to that graph (and potentially, delete and modify others) and
then submit the modified graph back to a DAS connected to the
originating database. The DAS scans the associated change summary and
generates and executes statements to reflect all graph changes back to
the database. This scenario may or may not be meaningful to your
application.
If you want to perform a write operation today without leveraging the
change summary then your alternative is to use the low-level (manual
insert) as you have shown. That said, we may want to expand the current
DAS API's to allow pure inserts and deletes. The change summary may be
overkill for scenarios that only require deletes and inserts. Maybe
something like this:
DAS.delete (List dataObjects)
DAS.insert (List dataObjects)
Would these be helpful?
Also, it looks like you are using a pretty old version. Maybe M1? The
apis have been simplified and many new capabilities exist in the M2
diver. The trunk has been pretty stable too.
Thanks for your interest.
--
Kevin
Jeff Watkins wrote:
Hi,
I've created a sample app that uses DAS to persist an SDO passed to my
web-service to a Derby database. If I do as in the BigBank example and
use a manual insert everything is ok, e.g.
Command insert = Command.FACTORY.createCommand("insert into MyTable
(name) values ('"
+ myObject.getName() + "')" );
However, when I try to get my DataObjectImpl derived object to apply
itself using "apply.execute((SpecificDOImpl) myObject);", it doesn't
work. Am I doing it wrong or is this feature not in place yet? All I get
is a NPE. There don't appear to be any examples covering this sort of
usage yet.
Thanks,
Jeff Watkins
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]