Tôi có một servlet được sử dụng để lấy dữ liệu từ nhiều datapoint REST của bên thứ ba, tích hợp tất cả dữ liệu và báo cáo dữ liệu ở định dạng HTML. Tôi cũng có một bộ lọc trong đó có các dòng sau -Làm thế nào để nâng cấp các bộ lọc để hỗ trợ servlet Servlet 3.0 không đồng bộ
- Tạo một bản ghi sự kiện khi yêu cầu truy cập các bộ lọc và thêm các đối tượng eventrecord để yêu cầu
- thực hiện chain.doFilter - cho phép servlet để bổ sung thêm chi tiết cho eventrecord
- trên đường trở về trình duyệt, bộ lọc nhận đối tượng sự kiện và ghi nhật ký.
Bây giờ nếu tôi sử dụng không đồng bộ servlet sử dụng AsyncContext context = request.getAsyncContext();
, mà sẽ nói chuyện với datapoints REST của cùng nhưng như và khi dữ liệu đã sẵn sàng, nó sẽ ghi vào dòng phản ứng thay vì chờ cho tất cả các điểm dữ liệu REST để trả lời, Tôi sẽ viết lại bộ lọc của mình bằng cách nào? Nó sẽ được gắn vào luồng có trách nhiệm xóa dữ liệu từ các điểm dữ liệu REST sao cho khi tất cả dữ liệu được xử lý và được sử dụng, nó sẽ ghi lại sự kiện không? Có bất kỳ mẫu phổ biến nào mà tôi có thể nghiên cứu để hiểu cách các trường hợp sử dụng này có thể được xử lý với servlet không đồng bộ của Servlet 3.0 không? Tôi đang sử dụng JDK 6.0, Tomcat 7.0.