On the Python side, there is the remote_api module, which may help you here.
I believe this is on its way for the Java runtime. Let me know if this is
what you're looking for:
http://code.google.com/appengine/articles/remote_api.html
http://code.google.com/appengine/docs/python/tools/uploadingdata.html

- Jason

On Sat, Aug 22, 2009 at 10:53 PM, akpraha <akpr...@gmail.com> wrote:

>
> Is there any chance that there will be some sort of scriptable way of
> managing the evolution of applications data model?  With SQL-based
> implementations of JPA/JDO it's a no-brainer, but I really see this as
> a deal breaker for implementing more complex and long-lived
> applications.  As it stands now, it's good for testing out concepts,
> but that's about it.
>
> On Aug 18, 9:02 pm, "Jason (Google)" <apija...@google.com> wrote:
> > Also make sure that you use Integer instead of int, Double instead of
> > double, etc. since the latter cannot be set to null. Mujtaba is right --
> App
> > Engine's datastore is built on top of BigTable which you can think of
> > (simplistically) as a large hash table, so you can freely add properties;
> > these will be set to null for those entities that don't have data
> associated
> > with these property names.
> > Be advised that removing field from a JDO or JPA class does not
> > automatically clear the data associated with the corresponding properties
> in
> > the datastore.
> >
> > - Jason
> >
> > On Mon, Aug 17, 2009 at 12:28 PM, victor <victoraco...@gmail.com> wrote:
> >
> > > I tried what you suggested and I get the following exception:
> >
> > > Datastore entity with kind ...has a null property named
> > > voteDownCount.  This property is mapped to ..., which cannot accept
> > > null values.
> >
> > > It looks like I have some missing parameters in the
> > > @Persistentannotation? I was thinking it would be the "nullValue"
> > > parameter but it does not seem to be the case.
> > > Does anyone know what would this be?
> >
> > > Thanks!
> >
> > > On Aug 16, 11:48 pm, Mujtaba Hassan <abatju...@gmail.com> wrote:
> > > > This issue has been discussed on the forum.
> >
> > > > Just add your the new field in the ClassA and start your development,
> the
> > > > old records will store null associated with the new field.
> >
> > > > On Mon, Aug 17, 2009 at 8:30 AM, victor <victoraco...@gmail.com>
> wrote:
> >
> > > > > This seems to be a common use case but I cannot seem to find the
> > > > > answer to this in the forum. Let us say I have defined a persistent
> > > > > class:
> > > > > class A {
> > > > >  private String field;
> > > > >  //get set methods removed for clarity
> > > > > }
> >
> > > > > Supposed that this class worked out fine and I have already
> deployed
> > > > > my app and populated my tables with it. But then it just occurred
> to
> > > > > me that I have to add a new field:
> > > > > class A {
> > > > >  private String field;
> > > > >  private String newField;
> > > > >  //get set methods removed for clarity
> > > > > }
> >
> > > > > What would be the best way to tackle this scenario? Can I just
> extend
> > > > > "A" instead? -- but class extension seems to be poorly supported in
> > > > > this JDO implementation. How do I migrate my old class versions?
> >
> > > > > I was thinking of putting class version on my classes and everytime
> I
> > > > > update it I would do the following steps:
> > > > > 1) Change the version ID of the class
> > > > > 2) Migrate all the tables in the table by retrieving it, changing
> the
> > > > > version ID, resave it with the new class.
> >
> > > > > Any pointers would be helpful.
> >
> > > > > Thanks!
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-java@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to