0

We have a clone of draw.io. We have made some modifications to the UI for increased functionality. This works on localhost. We then did the Google Drive authentication process. But it was done on version 12.1.7 of draw.io. That integrated with google drive, except when re-opening a previously saved file.[Error with this version discussed here:https://stackoverflow.com/questions/62889536/no-access-control-allow-origin-header-is-present-on-the-requested-resource] So, we ported our changes to the recent version of draw.io ,version 13.4.5 (https://github.com/jgraph/drawio/releases/tag/v13.4.5). Now, we get a different error. When trying to authenticate <screen shot of pop-up just before error> we get: Login attempts failed.Please try again later <screenshot of error message>. When we look at developer tools, we see this

HTTP Status 500 - Can't make API call memcache.Set in a thread that is neither the original request thread nor a thread created by ThreadManager

type Exception report

message Can't make API call memcache.Set in a thread that is neither the original request thread nor a thread created by ThreadManager

description The server encountered an internal error that prevented it from fulfilling this request.

exception

com.google.apphosting.api.ApiProxy$CallNotFoundException: Can't make API call memcache.Set in a thread that is neither the original request thread nor a thread created by ThreadManager
    com.google.apphosting.api.ApiProxy$CallNotFoundException.foreignThread(ApiProxy.java:800)
    com.google.apphosting.api.ApiProxy$1.get(ApiProxy.java:175)
    com.google.apphosting.api.ApiProxy$1.get(ApiProxy.java:172)
    com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:89)
    com.google.appengine.api.memcache.MemcacheServiceImpl.quietGet(MemcacheServiceImpl.java:26)
    com.google.appengine.api.memcache.MemcacheServiceImpl.put(MemcacheServiceImpl.java:69)
    com.google.appengine.api.memcache.stdimpl.GCache.put(GCache.java:157)
    com.mxgraph.online.AbsAuthServlet.doGet(Unknown Source)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
note The full stack trace of the root cause is available in the Apache Tomcat/8.0.32 (Ubuntu) logs.

Notice the line in <com.mxgraph.online.AbsAuthServlet>. It says “doGet” is throwing error. I am new to servlets and don’t know how to proceed. I did not find “doGet” in the file AbsAuthServlet.java .

Any help to solve this issue will be great.

  • Have you created your own project in Google Cloud for this deployment? – Frodo Baggins Jul 22 '20 at 21:15
  • @ThomastheTankEngine .Thankyou for responding.We have a project created in Google developer console [link](https://console.developers.google.com/) . Domain verification was done and Oauth integration credentials generated. Then we enabled the Google Drive API for the project. The host name ,client id,secret were all added and war generated to deploy from server. – Meera Ramadevi Jul 23 '20 at 10:50
  • This is a bug, added as https://github.com/jgraph/drawio/issues/1059 – Frodo Baggins Jul 23 '20 at 11:53
  • Thankyou @ThomastheTankEngine, will subscribe to the issue in github. – Meera Ramadevi Jul 25 '20 at 18:23
  • @ThomastheTankEngine I am interested in this bug, as well. While it's waiting to be fixed, is there any workaround, so that we can deploy Draw.io from our own server? – seanhalle Aug 06 '20 at 02:08

0 Answers0