Google App Engine Eclipse plugin without using GWT - google-app-engine

I want to host a Java/AngularJS app on Google App Engine, and leverage the Eclipse plugin. I figure the most straightforward way to do this is:
From within Eclipse, start a new Google Web Project.
Go to project properties and uncheck GWT and DataNucleus.
Delete the generated java classes and GWT related stuff so you have an appengine.web.xml, web.xml, WEB-INF/lib, log4j properties, and a few other files left.
Put index.html under the war folder, sister to favicon.ico.
Change web.xml welcome file to index.html
Deploy and test that index.html is visible.
Deployment via Eclipse works fine, but myapp.appspot.com/ and myapp.appspot.com/index.html both return 404.
Simply put my use case is "how do I deploy an index.html to GAE (using Eclipse plugin) without the 800 pound guerilla that is GWT?"
I was unable to find good documentation on this.

Unchecking 'Use Google Web Toolkit' should be all you need to do to create a basic App Engine application without GWT, however, it will not create a sample index.html file. For that, you need to keep 'Generate project sample code' checked. This will create some extra Java files for you that you'll need to delete, but it's the closest you can get to what you described in your question.

Related

Do I need an app.yaml for my App Engine project?

I keep reading in App Engine references about configuration directives that go into app.yaml, such as 'DBG_ENABLE'. But I can't find this file in my Android Studio created GAE project. Furthermore, I find that some of the directives in this file (for instance: Scaling) also have equivalent in appengine-web.xml.
So, what's the deal with this yaml file - do I need to create it? Where?
There is no app.yaml file created by Android studio, because usually you use Java Serverlet to implement the App Engine Application under Android Studio, it uses the /WEB-INF/appengine-web.xml file to configure the project.
The app.yaml file is used for the App Engine Project using Python, Go and PHP.

Deploying Google App Engine and Slim3 code

I am developing a GAE app and using Slim3 for persistence. I've created the model and the metamodel. When I try to deploy the app to GAE I get the following error when I run the app.
/register
java.lang.IllegalArgumentException: The meta data of the model(com.principalmvl.lojackmykids.meta.ContactMeta) is not found.
at org.slim3.datastore.DatastoreUtil.createModelMeta(DatastoreUtil.java:801)
at org.slim3.datastore.DatastoreUtil.getModelMeta(DatastoreUtil.java:729)
I looked at the lib directory under the WEB-INF directory and I see the generated .CLASS files.
What is the issue? Is there something I need to do on the import or a configuration so that GAE sees this classs?
I believe the issue is in the Eclipse project. I recreated a new project and copied all of my servlets and meta data models and it worked. I killed the other project since it seemed to be corrupt.

How to setup IntelliJ IDEA for Google App Engine Go development?

I want to use IntelliJ IDEA IDE for developing GAE Golang apps. I know I need to download the program and the Golang plugin, but beyond that I am lost. Is there a tutorial available on how to configure IDEA for GAE Go development?
I have my project set up in GOPATH/src/... folder, App Engine SDK is configured and I can run my project from command line using goapp. However, I would like to be able to setup an IDE for syntax checking and be able to run and debug the app from the IDE, rather than resort to using the console.
Right click your project in the left pane and select 'Open Module Settings'. From there:
go to Project Settings -> Project
New SDK -> select the path to the goroot directory of the appengine sdk
Apply and you should have completion for the standard go appengine stuff.
If you also want completion for packages that you download using goapp get XXX, go to 'Platform Settings -> SDKs' and add the appropriate path there. It should be somewhere under gopath.

Can't deploy EAR to Google App Engine 1.9.4

I'm having troubles deploying a Google App Engine EAR application from Cloudbees. The application is built using 1.9.4. The application structure is similar to this project: https://github.com/deege/gae-rest-skeleton The main difference is I have more than just one module.
The problem I'm running into is how to configure the deployment. I have the "Post steps | Deploy Applications | Google App Engine (Java)" set up as the video from their site, but the configuration is expecting a WAR directory structure in the Fixed Directory section.
It's looking for a directory where a WEB-INF/appengine-web.xml file exists. I can point the configuration to the front end's directory where this does exist (and was doing that until I added more modules), but then it only deploys the front end. None of the other WARs are deployed.
I think it should be looking for the META-INF/appengine-application.xml file in the ear directory, since this describes the whole application (front ends and supporting modules).
Is there something I'm missing with the configuration? Do I need to deploy each module (WAR) separately?
Our deployer plugin was written before GAE added support for EARs. If ignoring the form validation and just entering the configuration that you know should work doesn't work then open a ticket.
I will be investigating and adding the extra form validation to the plugin at my next review window for the plugin, but an interim workaround of just ignoring any displayed errors should work
update
I have updated the app engine deployer plugin. Upgrading to version 3.0 or newer will allow you to deploy EAR exploded archives

Google App Engine deploys incorrect application

I am new to the Google App Engine.
I used Aptana Studio 3 on Windows 7 to create a sample GAE application using its PyDev module and the "Ask Login" template. Aptana created a folder called 'src' which contains the necessary files (app.yaml, asklogin.py). But when I use the Launcher (from the GAE SDK) to deploy this application, another folder is created at the same level as the original 'src' folder, where the deployer puts in a simple 'hello webapp world' application and deploys that code instead!
During my first test, I did in fact upload a 'hello webapp world' application, but now want to override it w/ the 'Ask Login' application. But for some reason, the deployer seems to be remembering the original application (some form of hidden cacheing?).
Thanks in advance for any ideas.
In the Google App Launcher make sure that you do NOT "add application", but that you "add existing application" and point that to the src folder that you mentioned. These options can be found in the File menu.
As long as your app.yaml file contains the correct name of the application as registered on GAE you should be good to go.

Resources