Migrating from Endpoints v1 to v2 for AppEngine

189 views
Skip to first unread message

Paul Mazzuca

unread,
Feb 20, 2017, 9:22:49 PM2/20/17
to Google App Engine
In trying to migrate to Endpoints V2 for GAE, I have been unable to get the example located at  java-docs-samples/appengine/endpoints-frameworks-v2/backend (git clone https://github.com/GoogleCloudPlatform/java-docs-samples) to work. Does anyone know where the documentation for localhost testing is? Has anyone gotten this example to work locally?  The README does include instructions as to how to deploy the project, but nothing on how to test locally. 

The process that I have used thus far is:

1.  mvn exec:java -DGetSwaggerDoc
2. mvn appengine:run

Then to test:

 curl \

         -H "Content-Type: application/json" \

         -X POST \

         -d '{"message":"echo"}' \

         http://localhost:8080/_ah/api/echo/v1/echo


The response is a 404.



Les Vogel

unread,
Feb 21, 2017, 2:59:53 PM2/21/17
to google-a...@googlegroups.com, Frank Natividad
+frank

Frank - could you reply to this?

--
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 google-appengine+unsubscribe@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at https://groups.google.com/group/google-appengine.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-appengine/8d633137-4ef5-4b51-8da9-95bb1a18ba02%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--

  •  
Les Vogel
  •  Cloud Developer Relations
  •  le...@google.com
  •  +1-408-676-7023 

Paul Mazzuca

unread,
Feb 21, 2017, 4:51:47 PM2/21/17
to Google App Engine
After doing a gcloud update, and mvn clean package, and running mvn appengine:run with Java 7, I receive the following error in the client response to the curl request:



<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>

<title>Error 500 usingExperimentalRuntime</title>

</head>

<body><h2>HTTP ERROR 500</h2>

<p>Problem accessing /_ah/api/echo/v1/echo. Reason:

<pre>    usingExperimentalRuntime</pre></p><h3>Caused by:</h3><pre>java.lang.NoSuchFieldError: usingExperimentalRuntime

at com.google.appengine.api.urlfetch.URLFetchServicePb$URLFetchRequest.writeTo(URLFetchServicePb.java:1928)

at com.google.appengine.repackaged.com.google.protobuf.AbstractMessageLite.toByteArray(AbstractMessageLite.java:41)

at com.google.appengine.api.urlfetch.URLFetchServiceImpl.fetch(URLFetchServiceImpl.java:40)

at com.google.api.client.extensions.appengine.http.UrlFetchRequest.execute(UrlFetchRequest.java:74)

at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:972)

at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:419)

at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352)

at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:469)

at com.google.api.control.Client.check(Client.java:188)

at com.google.api.control.ControlFilter.doFilter(ControlFilter.java:249)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)

at com.google.api.control.ConfigFilter.doFilter(ConfigFilter.java:120)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)

at com.google.appengine.api.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)

at com.google.appengine.tools.development.devappserver2.RequestIdFilter.doFilter(RequestIdFilter.java:36)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)

at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)

at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)

at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:48)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)

at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:122)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)

at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)

at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)

at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)

at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)

at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:95)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)

at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:508)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)

at org.mortbay.jetty.Server.handle(Server.java:326)

at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)

at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)

at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)

at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)

</pre>

<hr /><i><small>Powered by Jetty://</small></i><br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                

<br/>                                                


</body>

</html>

Frank Natividad

unread,
Feb 21, 2017, 9:01:24 PM2/21/17
to Google App Engine
Hi Paul, 

Sorry to hear you had a problem trying to run our sample locally. I'm looking into it now. 

Frank Natividad

unread,
Mar 3, 2017, 3:33:21 PM3/3/17
to Google App Engine
[Solution - for given situation]

The customer was able to get passed this issue by doing the following:
  1. gcloud components update
  2. Change version for appengine-api-1.0-sdk from  1.9.30 to 1.9.49
  3. gcloud deploy openapi.json, because the sample sends metrics to the endpoints service
  4. export ENDPOINTS_SERVICE_NAME=echo-api-flex.endpoints.[YOUR_PROJECT_ID].cloud.goog
Others who see this issue:

  1. gcloud components update
  2. git pull (Get the latest code sample, because it's changed frequently)
  3. Follow instructions here: https://cloud.google.com/endpoints/docs/frameworks/java/quickstart-frameworks-java 
Reply all
Reply to author
Forward
0 new messages