Hey all. I just published the datastore migrator that I wrote for a personal application. It uses the GAE Remote API for read/writing to the datastore from the command line. The classes are meant to be included in a GAE web app project.
GAE Datastore Migrator on GitHub<https://github.com/bpossolo/gae-datastore-migrator> When exporting, the datastore is dumped to CSV files. When importing, the CSV files are read and converted into Java objects then persisted as Entity objects to another datastore. The algorithm for converting from CSV strings to Java objects looks at your JPA domain model classes to do type conversions. It supports @Embedded classes too. A utility class that reads your JPA persistence.xml file to find JPA @Entity classes is also provided. In order to read from a datastore, you must have the following servlet in your web.xml as per the GAE documentation<https://developers.google.com/appengine/docs/java/tools/remoteapi#configuring_remote_api_on_an_app_engine_client> <servlet> <servlet-name>AppEngineRemoteApiServlet</servlet-name> <servlet-class>com.google.apphosting.utils.remoteapi.RemoteApiServlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>AppEngineRemoteApiServlet</servlet-name> <url-pattern>/remote_api</url-pattern> </servlet-mapping> I've successfully dumped my production data into my DevMode datastore and find it really useful to be able to test on my local machine using a large dataset with realistic data. Finally, if you are interested in my personal project you can check it out here <http://marketplace.styleguise.net>. And here is my blog <http://bpossolo.blogspot.com> where I write about Google Web Toolkit and Google App Engine. -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/google-appengine. For more options, visit https://groups.google.com/groups/opt_out.
