tôi đã tạo ra một servlet 3.0 để khám phá xử lý yêu cầu không đồng bộ:IllegalStateException: Không hỗ trợ trên AsyncContext.startAsync (req, res)
@WebServlet(name="MyTest", urlPatterns={"/MyTest"}, asyncSupported=true)
public class MyTest extends HttpServlet {
@Override
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
AsyncContext tmp = req.startAsync(req, res);
...
}
}
nhưng tôi nhận được một IllegalStateException
khi .startAsync(...)
được gọi. Tôi biết Javadoc đề cập đến ngoại lệ đó, nhưng tôi đã bật một cách rõ ràng các chú thích không đồng bộ (c.f. WebServlet
). Tôi đang sử dụng Tomcat 7.0.11.0 được phân phối với NetBeans.
Tôi có thể xác nhận rằng req.isAsyncSupported()
đang trả về false. Tôi đang làm gì sai? Tôi cần phải làm gì để kích hoạt xử lý không đồng bộ?
EDIT:
tôi đã cố gắng để thực hiện các example sau và có cùng một vấn đề.
Tôi hiện đã cài đặt lại NetBeans 7.0.1, đi kèm với Tomcat 7.0.14, nhưng tôi vẫn gặp sự cố tương tự. – JVerstry