[
https://issues.apache.org/jira/browse/TUSCANY-1815?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12531817
]
Nick Duncan commented on TUSCANY-1815:
--------------------------------------
When you say:
------------------
//create new customer using static SDO - say a service is doing it
...
DataObject graph = gm.emptyGraph(helper.getConfig());
CUSTOMER c = (CUSTOMER) graph.createDataObject("CUSTOMER");
-----------------
I don't see how that a Customer from a service could be created in such a way.
We would not want a config to be available in every tier of the architecture.
We would want our service implementations to accept or send a static data
object (or dynamic) and not have to worry about the underlying complexity of
tying it to a Config. Basically we want to have a totally detached service
oriented architecture.
If we have a data object, not created via a root object derived from a query,
or from gm.emptyGraph(helper.getConfig()).createDataObject(), then how do we
best persist that to the database?
Thank you
> das.applyChanges will always do insert instead of update if createDataObject
> was used
> -------------------------------------------------------------------------------------
>
> Key: TUSCANY-1815
> URL: https://issues.apache.org/jira/browse/TUSCANY-1815
> Project: Tuscany
> Issue Type: Bug
> Components: Java DAS RDB
> Affects Versions: Java-DAS-beta1, Java-DAS-Next
> Environment: DB2 Iseries
> Reporter: Nick Duncan
> Assignee: Amita Vadhavkar
> Fix For: Java-DAS-Next
>
>
> If I do something like:
> -------------------------------
> DataObject root = das.getCommand("AllAutos").executeQuery();
>
> DataObject dao = root.createDataObject("t_test");
> dao.set("NAME", "NICK");
> dao.set("ID", 100);
>
> das.applyChanges(root);
> -------------------------------------
> There is already a row in the table with primary key 100. ID is defined in
> the config xml as being the primary key, it ignores that ID was set and does
> an insert statement. ID is also defined as an auto generated column.
> Basically I was expecting something like Hibernate's savorOrUpdate... Maybe
> if the field that represents primary key is shown to have been changed in
> the changeSummary, then DAS will figure out what statement to generate.
> Where I'm seeing this being a problem is if we get a dataobject that
> represents a row in the database, and then send it off to a service, we get
> back another object that has been updated, but since it is a different object
> then the DAS will think it should do an update? Merge doesn't seem to
> alleviate this problem either. Please let me know if I am way off base here.
> Thanks
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]