【问题标题】:Jetty 7 Continuations: How to *not* redispatch the request?Jetty 7 Continuations:如何*不*重新发送请求?
【发布时间】:2010-03-20 04:31:23
【问题描述】:

我正在使用 Jetty 7 延续来实现一些异步处理。我正在尝试做的是开始延续(通过.suspend()),然后将延续交给将组成响应的其他对象,这很好。但是 Jetty 不断将响应(isInitial = false)重新分派给 servlet,我不希望或不需要这样,因为响应正在由其他对象处理。

所以,我想找到一种方法来显式在超时或过期时重新调度请求,因为我正在使用事件驱动的一系列回调来实际产生响应。

【问题讨论】:

标签: java asynchronous jetty


【解决方案1】:

查看continuation.isInitial() 周围的文档 - 来自http://wiki.eclipse.org/Jetty/Feature/Continuations

恢复请求

一旦异步事件发生 发生,可以继续 继续:

void myAsyncCallback(Object results)
{
    continuation.setAttribute("results",results);
    continuation.resume();
}

当继续进行时, 请求被重新分派到 servlet 容器,几乎就像请求 又收到了。然而 在重新调度期间, continuation.isInitial() 方法 返回 false 和任何属性集 由异步处理程序是 可用。

【讨论】:

    猜你喜欢
    • 2012-11-29
    • 2014-08-30
    • 1970-01-01
    • 2021-09-25
    • 2011-06-15
    • 1970-01-01
    • 2021-11-22
    • 2012-02-11
    • 2015-01-08
    相关资源
    最近更新 更多