Google Cloud Endpoint 404 after deployment

Now that Google’s cloud endpoints are open to all developers, I’ve created a Google Cloud endpoint that works, runs a local launch in Eclipse debugging. But when I deploy, the real-time endpoint returns HTTP 404. My JSP page projects run both locally and deployed. These are simply endpoints that do not work after deployment.

Has anyone understood what I need to do to deploy the endpoints for the clouds?

+6
source share
8 answers

I found that although I only had one version (v1) deployed and this version was listed as the “standard” version in the application engine management console, I still had to “install” v1 by default until the API was available.

+12
source

Endpoints support the APIs in the default version of the application right now.

+2
source

I noticed that you need to access your endpoint by making the version that you deployed by default. For example https://yourappid.appspot.com/_ah/api/path/v2/methodname . If you use https://someappversion.yourappid.appspot.com/_ah/api/path/v2/methodnamel , this will not work based on my experience

+1
source

Have you tried to access them through the API?

I had the same problem yesterday ... It just happened with the wrong address.

0
source

This is a V2 bug. The version of the API does not increase with the version of Appengine! These are two different versions. Try with version 1.

0
source

I am having this problem and the problem is that I did not create a "Cloud Cloud Cloud Cloud Library" in eclipse.

As soon as I did this, everything worked perfectly.

0
source

As with App Engine 1.7.7 and earlier, this could also be due to the fact that you did not add your Endpoint class to web.xml as follows:

<servlet> <servlet-name>SystemServiceServlet</servlet-name> <servlet-class>com.google.api.server.spi.SystemServiceServlet</servlet-class> <init-param> <param-name>services</param-name> <!-- Careful! No whitespace but commas between class names. --> <param-value>ditto.api.CategoryEndpoint,ditto.api.PostEndpoint</param-value> </init-param> </servlet> 
0
source

To add to the accepted answer, if your API is written in Java and you use Maven, you can automatically generate a version of the API by adding it to your configuration for appengine-maven-plugin . When deployed, the version number will be automatically updated, and the deployed version will be installed as the only current working version of your API:

  <plugin> <groupId>com.google.cloud.tools</groupId> <artifactId>appengine-maven-plugin</artifactId> <version>${appengine.maven.plugin.version}</version> <configuration> <deploy.projectId>my-gcp-project-name</deploy.projectId> <deploy.version>GCLOUD_CONFIG</deploy.version> </configuration> </plugin> 

The corresponding line is <deploy.version>GCLOUD_CONFIG</deploy.version> ( GCLOUD_CONFIG is the actual value you need - it is recognized as a special variable when deployed)


0
source

All Articles