I'm using tomcat 7.0.8 on Ubuntu 10.10.

I've got a servlet doing Servlet 3.0 asynchronous processing, using 
HttpServletRequest.startAsync().
The AsyncContext.complete() is later called from a different thread, but it's 
*not* one that was started by AsyncContext.start().

I'm wondering if anyone can comment about whether calling complete() in this 
way might cause problems. In general things seem to be working but I'm seeing 
behaviour in some situations that leads me to believe requests may not be 
properly completed/closed.

The servlet 3.0 spec had the following to say. It seems that my thread may not 
have the "Web Application Environment" but I'm not sure exactly what that means:
--------------------------
Java Enterprise Edition features such as Section 15.2.2, “Web Application 
Environment” on page 15-174 and Section 15.3.1, “Propagation of Security 
Identity 
in EJB™ Calls” on page 15-176 are available only to threads executing the 
initial 
request or when the request is dispatched to the container via the 
AsyncContext.dispatch method. Java Enterprise Edition features may be 
available to other threads operating directly on the response object via the 
AsyncContext.start(Runnable) method
--------------------------

Thanks,
Chris

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to