【问题标题】:Send notification from Google App Engine Task to UI从 Google App Engine 任务向 UI 发送通知
【发布时间】:2016-06-07 16:23:22
【问题描述】:

我的 Google App Engine JSP 需要执行冗长的处理,因此它将任务添加到任务队列,然后每 30 秒刷新一次以等待任务完成。任务如何让 JSP 知道它的状态?我尝试使用会话,但似乎会话对象没有在 JSP 和任务之间共享。我试图从任务中抛出异常,以防它无法启动错误页面(我确实在 web.xml 中配置了错误页面),但它也不起作用。

【问题讨论】:

    标签: java jsp google-app-engine task


    【解决方案1】:

    这类问题的答案是实现某种“Web Hook”,当任务完成时它会回调 JSP。

    另一个选项是实现 AJAX,此异步调用将检查任务的状态,然后根据需要更新 UI。

    如果你能在这个问题中提供更多的背景,那就更好了。

    【讨论】:

    • 我在 Google App Engine 上运行。我不知道添加网络挂钩或使用 AJAX 与从 Google App Engine 队列运行的任务进行通信
    • 队列基本上是一个在 URL 上的“队列”。您需要做的是在任务完成时回调 JSP。顺便说一句,这将称为新的 JSP。如果您不想这样做,您可以做的是确保在队列调用的 URL / 方法返回之前,您将调用 Datastore 来存储关于此特定排队任务的状态对象,无论是 STARTED、WORKING 和 DONE , 字符串值。然后您的 JSP 将需要 java 一些 Ajax 调用以不时检查状态,例如每 1-2 秒一次。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多