我正在使用Jetty 7 continuation来实现一些异步处理。我想要做的是从连续开始(通过.suspend()),然后将延续关闭到构成响应的其他对象,这很好。但是Jetty会不断地将响应(使用isInitial = false)重新分配给servlet,我不想或不需要它,因为响应正由其他一些对象处理。
所以,我想找到一种方法来显式不在超时或过期时重新发送请求,因为我正在使用事件驱动的一系列回调来实际产生响应。< / p>
答案 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并设置任何属性 由异步处理程序 可用。