Как обновить фильтры для поддержки асинхронного сервлета Servlet 3.0

У меня есть сервлет, который используется для извлечения данных из многих сторонних точек данных REST, интеграции всех данных и представления данных в формате HTML. У меня также есть фильтр со следующим потоком:

  1. Создайте запись о событии, когда запрос попадает в фильтр, и добавьте объект записи события к запросу
  2. eventrecord
  3. на обратном пути к браузеру, filter получает объект eventrecord и регистрирует его.

Теперь, если я использую асинхронный сервлет, используя AsyncContext context = request.getAsyncContext();, который будет обращаться к тем же точкам данных REST, но когда данные будут готовы, он будет записывать в поток ответов вместо ожидания ответа всех точек данных REST, как бы я переписал свой фильтр ? Будет ли он прикреплен к потоку, который отвечает за сброс данных из точек данных REST, чтобы после обработки и сброса всех данных он регистрировал запись события? Есть ли какой-либо общий шаблон, который я могу изучить, чтобы понять, как такие варианты использования могут обрабатываться с помощью асинхронных сервлетов Servlet 3.0? Я использую JDK 6.0, Tomcat 7.0.

9
задан Shamik 29 May 2012 в 13:38
поделиться