Автоматический запуск очереди задач с помощью java Google App Engine (GAE)

Я хотел бы запустить задачу в очереди задач GAE. Я шаг за шагом выполнил настройку из Task Queue Java в GAE, но когда я щелкаю (например) ссылку на моем веб-сайте (который вызывает сервлет, который запускает задачу), он только ставит задачу в очередь (как я вижу на «ссылке на очереди задач» в моей консоли AppEngine) и это никогда не запускается. Он успешно запускается, только если я нажимаю правую кнопку «Выполнить сейчас» (под столбцом «Действия»).

Итак, кто-нибудь знает, как запустить его автоматически (без необходимости заходить в консоль AppEngine и каждый раз нажимать «Выполнить сейчас»)?

Большое спасибо

[Изменить] Добавление кода:

[Веб-страница в формате HTML]:

<a href="/tasks/callTaskServlet">Call Task Servlet</a>

[CallTaskServlet.java]:

public class CallTaskServlet extends HttpServlet{

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {

        Queue queue = QueueFactory.getDefaultQueue();
        queue.add(TaskOptions.Builder.withUrl("/tasks/taskServlet").param("act", "refresh").retryOptions(RetryOptions.Builder.withTaskRetryLimit(1)));

    }

}

[TaskServlet.java]:

public class TaskServlet extends HttpServlet{

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {
        String action = req.getParameter("act");
        LOGGER.warning(action);

        //Doing my stuff here…
    }

}

[веб.xml]:

<servlet>
    <servlet-name>Task</servlet-name>
    <servlet-class>servlet.TaskServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>Task</servlet-name>
    <url-pattern>/tasks/taskServlet</url-pattern>
</servlet-mapping>

<servlet>
    <servlet-name>CallTask</servlet-name>
    <servlet-class>servlet.CallTaskServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>CallTask</servlet-name>
    <url-pattern>/tasks/callTaskServlet</url-pattern>
</servlet-mapping>

[Task Queues AppEngine]: Task Queues AppEngine

[Журнал GAE (/tasks/taskServlet не запущен)] Журнал GAE

Я что-то пропустил? Я надеюсь, что это достаточно.


person Aerox    schedule 01.06.2014    source источник
comment
Покажите, как вы создаете задачу и добавляете ее в очередь.   -  person Andrei Volgin    schedule 01.06.2014
comment
Точно так же упоминается Google. В любом случае, дайте мне минуту, чтобы вставить его и отредактировать мой вопрос.   -  person Aerox    schedule 01.06.2014
comment
Хорошо, я отредактировал ;-) Пожалуйста, посмотрите сейчас. Большое спасибо :-)   -  person Aerox    schedule 01.06.2014


Ответы (1)


Ваша очередь приостановлена. Нажмите «Возобновить очередь», и все заработает как надо.

Обратите внимание, что очередь никогда не возобновится сама по себе.

person Andrei Volgin    schedule 01.06.2014
comment
Ах ах ах! Это была глупая оплошность. Спасибо Андрей! Большое спасибо :-) - person Aerox; 02.06.2014