簡體   English   中英

Google App Engine Cron后端Java總是給出錯誤

[英]google app engine cron backend java always give an error

我有一個像這樣的servlet代碼:

public class BackendServlet extends HttpServlet {
   private static final Logger LOG = Logger.getLogger(BackendServlet.class.getName());
   protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
      doPost(req, resp);
   }

   protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
      LOG.info("just test backend");
   }
}

然后,我有一個web.xml ,如下所示:

  <servlet>
     <servlet-name>update</servlet-name>
      <servlet-class>com.google.api.test.backend.BackendServlet</servlet-class>
  </servlet>

  <servlet-mapping>
    <servlet-name>update</servlet-name>
    <url-pattern>/updatebackend</url-pattern>
  </servlet-mapping>

  <security-constraint>
    <web-resource-collection>
        <web-resource-name>update</web-resource-name>
        <url-pattern>/updatebackend</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>admin</role-name>
    </auth-constraint>
  </security-constraint>

  <security-constraint>
    <web-resource-collection>
      <web-resource-name>any</web-resource-name>
      <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
      <role-name>*</role-name>
    </auth-constraint>
  </security-constraint>

然后,我得到了cron.xmlbackend.xml ,如下所示:

cron.xml

<?xml version="1.0" encoding="UTF-8"?>
<cronentries>
  <cron>
    <url>/updatebackend</url>
    <description>Update on the backend</description>
    <schedule>every 5 minutes</schedule>
    <target>updatebackend</target>
  </cron>
</cronentries>

backend.xml

<?xml version="1.0" encoding="UTF-8"?>
<backends>
    <backend name="updatebackend">
        <class>B1</class>
        <options>
            <dynamic>true</dynamic>
        </options>
    </backend>
</backends>

但是當我將其上傳到App Engine服務器時。 它總是給我下面的錯誤信息:

/ _ah /在com.google.api.client.extensions.appengine.auth.oauth2.AbstractAppEngineAuthorizationCodeServlet.getUserId(AbstractAppEngineAuthorizationCodeServlet.java:92)上啟動java.lang.NullPointerException

如何在App Engine后端上使用cron作業正確運行servlet? 上面是否有我做錯的設置?

謝謝。

我知道我的問題在哪里,我應該首先為/ _ah / start創建servlet。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM