J'utilise CometProcessor pour implémenter des interrogations longues sur Tomcat 7.0. La chose qui me dérange est que je n'obtiens pas d'autres événements sauf CometEvent.EventType.BEGIN. L'exemple de code:Événements de comète manquants sur Tomcat 7 CometProcessor
@Override
public void event(CometEvent event) throws IOException, ServletException {
HttpServletRequest request = event.getHttpServletRequest();
HttpServletResponse response = event.getHttpServletResponse();
if (event.getEventType() == CometEvent.EventType.BEGIN) {
LOGGER.info("Begin for session: " + request.getSession(true).getId());
} else if (event.getEventType() == CometEvent.EventType.ERROR) {
LOGGER.error("Error for session: " + request.getSession(true).getId());
event.close();
} else if (event.getEventType() == CometEvent.EventType.END) {
LOGGER.info("End for session: " + request.getSession(true).getId());
event.close();
} else if (event.getEventType() == CometEvent.EventType.READ) {
LOGGER.info("Read from session: " + request.getSession(true).getId());
}
Je suppose que cela pourrait provoquer des fuites de mémoire parce que sur le magasin événement begin I l'objet de réponse dans mon tableau local.
Quelqu'un a-t-il une idée de ce qui pourrait se passer?