Chris,

I have the same issue, its probably related to this bug:
http://code.google.com/p/datanucleus-appengine/issues/detail?id=144

Did you find a way to work around this issue?

/Jesper

On 24 Maj, 18:12, chris <[email protected]> wrote:
> Background:
>
> I am using app engine 1.5 and GWT 2.3 with requestfactory. I have an
> inventory object that has an ArrayList of InventoryItems. I canupdate and add 
> entitites to the ArrayList collection without issue.
> Now I am trying toupdatea single InventoryItem object and it appears
> to complete successfully but the data is not updated. There is no
> exception being thrown and I see the the updated client values just
> before persisting the object. I have verified that the transaction is
> successful. Is there something I am missing? I have also tried to add
> a function in the Inventory class toupdatean InventoryItem and after
> mark the inventoryItems dirty using JDOHelper.makeDirty(this,
> inventoryItems) but this did not solve my issue either.
>
> @PersistenceCapable(identityType = IdentityType.APPLICATION,
> detachable = "true")
> public class Inventory {
>
>   /**
>    *Listof all inventory items in this inventory.
>    */
>   @Persistent(mappedBy="inventory")
>   @Element(dependent="true")
>   privateList<InventoryItem> inventoryItems;
>
>   ... more
>
> }
>
> ----------
>
> @PersistenceCapable(identityType = IdentityType.APPLICATION,
> detachable = "true")
> public class InventoryItem {
>
>   public InventoryItem persist() {
>     System.out.println("Persisting object with id " + this.getId());
>     System.out.println("Price is " + this.getPrice().toString());
>     PersistenceManager em = EntityManager.getPersistenceManager();
>     InventoryItem attached = null;
>
>     Transaction tx = em.currentTransaction();
>     try {
>       tx.begin();
>       attached = em.makePersistent(this);
>       tx.commit();
>     } catch (Exception e) {
>       e.printStackTrace();
>     } finally {
>       try {
>         if (tx.isActive()) {
>           tx.rollback();
>         }
>       } finally {
>         em.close();
>       }
>     }
>     return attached;
>   }
>
>   /**
>    * Primary key that can be used to reference this expense
>    */
>   @PrimaryKey
>   @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
>   @Extension(vendorName = "datanucleus", key = "gae.encoded-pk", value
> = "true")
>   private String id;
>
>   @Persistent Inventory inventory;
>
>   .... more data
>
>
>
>
>
>
>
> }

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to