0
我有一个管理传入HttpPosts这种方式的tomcat6的servlet:如何通过HttpServletResponse的其他线程
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
if (request.getParameter("cmd") != null) {
eventPool.addEvent(new CommandEvent(new String[] { request.getParameter("cmd"),
request.getParameter("json") }, response));
}
}
请求即将开始处理。当做到这一点,我想结果这样写请求的客户端:
protected void sendResponse(HttpServletResponse httpResponse, String content){
try {
httpResponse.getWriter().println(CMD + "#" + content);
httpResponse.getWriter().close();
} catch (IOException e) {
e.printStackTrace();
}
}
但未能刷新,我得到一个NullPointerException,因为获取HttpResponse已经关闭。
如何防止HttpResponse在我需要之前刷新?
Tomcat 6没有实现异步处理,因为Tomcat 6实现了Servlet规范的版本2.5,并且在Servlet 3.0之前没有添加异步请求处理。 为了回应那些花费大量时间在Tomcat 6上工作并继续在当前所有Tomcat版本上工作的人的有用答案,不会鼓励进一步的帮助。 – 2012-08-15 20:30:53