Google App Engine for Java SDK =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- What is Google App Engine? -------------------------- Google App Engine is a web application hosting platform that allows you to write your web application in one of several programming languages (including Python and Java). This SDK includes everything necessary to develop Java applications that can be hosted by App Engine. This includes a jar file and documentation for the current set of App Engine-specific API's, and a development environment that can be used to test your application before deploying. Contents -------- This bundle contains the following: docs/ - Documentation docs/javadoc - Javadoc for the App Engine API's bin/ - Executable Tools bin/appcfg - Deploys Java apps to Google bin/dev_appserver - Launches the development server lib/user/ - API's we provide to you to build your application. They should be bundled with your webapp (in WEB-INF/lib). lib/shared/ - API's intrinsic to App Engine such as the Servlet and JSP libraries. You must not bundle these with your webapp. config/ - Configuration files config/sdk - Configuration files for the SDK tools config/user - Configuration files for your applications demos/ - Sample applications Dependencies ------------ - Java 1.5 Writing an Application ---------------------- Google App Engine for Java web applications are based on the Java Servlet API. This means that you will want to provide classes that extend either the javax.servlet.GenericServlet or javax.servlet.http.HttpServlet classes. You will also need to supply a web.xml file that specifies these servlet classes, and a URL pattern for each. For a web application to be compatible with App Engine, it should look like this: WEB-INF/web.xml - Servlet deployment descriptor WEB-INF/appengine-web.xml - Custom (AE-specific) deployment descriptor WEB-INF/datastore-indexes.xml - (optional) list of datastore indexes to build for your application. WEB-INF/lib/appengine-api.jar - Include this to access App Engine API's - One or more of: WEB-INF/classes/... - Class files required by your app WEB-INF/lib/*.jar - Other Jar files required by your app WEB-INF/lib/*.zip - Other Zip files required by your app ... - Any static resources for your application Running the Local Runtime Environment ------------------------------------- All executable scripts live in the bin directory of the SDK. Windows scripts have a ".cmd" extension, Unix and MacOSX scripts end with ".sh". The commands below assume you're running them from the root directory of the SDK. To run the local development server use: bin\dev_appserver.cmd It will begin listening on port 8080 on the local machine. Many of the sample applications have Ant build.xml targets that start the local runtime environment. Uploading your App to Google ---------------------------- 1) Go to http://appengine.google.com and create your application. 2) Make sure that the application identifier in your appengine-web.xml file matches the one you chose in step 1. 3) Run appcfg to upload your application to deploy your application to Google's Servers: From the appengine-java-sdk directory, run: bin\appcfg.cmd update 4) Try your application out at: http://.appspot.com