Jetty 7 Continuations:如何*不*重新发送请求?

时间:2010-03-20 04:31:23

标签: java asynchronous jetty

我正在使用Jetty 7 continuation来实现一些异步处理。我想要做的是从连续开始(通过.suspend()),然后将延续关闭到构成响应的其他对象,这很好。但是Jetty会不断地将响应(使用isInitial = false)重新分配给servlet,我不想或不需要它,因为响应正由其他一些对象处理。

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

1 个答案:

答案 0 :(得分:2)

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

  

恢复请求

     

异步事件发生后   发生了,继续可以   续:

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

当恢复继续时,   请求被重新分配给servlet   容器,几乎就像请求一样   已经收到了。然而   在重新调度期间,   continuation.isInitial()方法   返回false并设置任何属性   由异步处理程序   可用。