Up and running on AppEngine!
Yay, I read up on Datastore today and got a basic insert and get from datastore working, and deployed a very basic “hello world” type app to app engine! Above is a cute logo mashup I found on the Google blog from when they announced java support. I recognized the app engine and the toolkit, but what is that shark/nose thing? Of course, it is Duke, the Java mascot! I’ve never seen him/it before! Hmm I thought I could find a cute knit version or something, but I guess prolific knitters and java mascot fans are mutually exclusive. Maybe I can change that.
A few gotchas I encountered (of course):
1) Yesterday as I decided I wanted to use app engine, I tried to deploy my app on app engine. When I created the new web application project in Eclipse, I had not checked “Google App Engine app”, I just specified that it would use GWT. Then when I added Google App Engine support, it added some files, but was missing appengine-web.xml. There are some open bugs on this issue, but I guess it’s not very high priority, since developers usually know if they are going to deploy on app engine.
I decided to create a new app and select Google App Engine, and copy over the classes I had written for a basic app. This led me to my second problem…
2) When copying over classes, I had not thoroughly checked that all instances of the previous app name were replaced with the new app name, so in web.xml the default page it was serving was the name of the html file from the previous project. Doh! Working in development mode worked fine, as it points directly to the html file, but problems arose when I tried to deploy to app engine. I stared at a 404 error for awhile before figuring it out.
From there, it was smooth sailing, the data was being inserted and retrieved correctly.
Sometimes it can feel awfully frustrating to set everything up in a new environment. Many times it can feel like everything that can possibly go wrong, does. And documentation never really acknowledges that. Docs just say, do A, B, and C and bam you’re done, when really it’s more like try to do A, why’s it not working, google error codes, oh maybe it’s this, nope what about this, someone else had this problem in 2008 I wonder if it’s fixed, etc.
And then if you ever ask someone that did it, or on a forum, they say, huh that’s weird, or oh didn’t you do this? you just have to do this and this and this, and there you go, you’re up and running now! Gah…sometimes I think engineers are masochists.
Luckily setup for me has been relatively smooth, or maybe I’m just expecting roadblocks along the way, so when I spent a few hours doing something that would only take 10 minutes to do again, I think it’s normal =)