There is no need to synchronize the request object. It will not be used 
in multiple threads concurrently. What you really need is 
synchronization of the session to prevent processing of the "double 
submit". If the user submits twice, then 2 different requests may be 
executed in different threads. Closing response streams don't help the 
main goal of preventing the double submit.

This may be an alternative:
      synchronized(sharedSessionBean){
        if (magicMethodToCheckForDoubleProcessingYouNeedToWrite()){
          abstractBean.setSharedSession(sharedSessionBean);
          abstractBean.setRequest(request);
          abstractBean.setResponse(response);
          abstractBean.setServlet(this);
          abstractBean.process();
          abstractBean.footerProcess();
        } else {
          //goto double submit error page
        }
      }

-Tim

Jenya Strokin wrote:
> I'm using servlet. But if you know way how to do this from JSP, please share
> it.))
> This is my method wich called from doGet and doPost:
> 
>   public void doGetPost(HttpServletRequest request, HttpServletResponse
> response)
>   throws ServletException, IOException {
> /*------------------------------------------------------
> If user clicks link twice, browser will get the same screen two times mixed.
> So, I need synchronized processes. But after that browser will get the same
> screen one after another. So I need close output after I process first
> request, and second request can not write to output string.
> --------------------------------------------------------*/
> 
>     synchronized(request){
>       abstractBean.setSharedSession(sharedSessionBean);
>       abstractBean.setRequest(request);
>       abstractBean.setResponse(response);
>       abstractBean.setServlet(this);
>       abstractBean.process();
> 
>       abstractBean.footerProcess();
> //---------- I'm trying to close output here, but second process write its
> data anyway
> //      out.close();
>       response.getWriter().close();
>     }
>   }
> 
> If this information is not enough, I'll provide more.
> Thanks for any help.
> 
> -----Original Message-----
> From: Durham David Cntr 805CSS/SCBE [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, July 18, 2002 10:18 AM
> To: Tomcat Users List
> Subject: RE: How to close a response?
> 
> 
> Need more detail about your problem.  Are you having a problem with JSP?
> 
> -----Original Message-----
> From: Jenya Strokin [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, July 18, 2002 9:17 AM
> To: [EMAIL PROTECTED]
> Subject: How to close a response?
> 
> 
> Hi,
> I need to close the response completely. In some case I need to avoid any
> process write to response output.
> Using
> response.getOutputStream().close();
> response.getWriter().close();
> response.reset();
> do not help.
> Thanks for any suggestions.
> 
> Jenya
> 
> -------------------------------------------
> Introducing NetZero Long Distance
> Unlimited Long Distance only $29.95/ month!
> Sign Up Today! www.netzerolongdistance.com
> 
> --
> To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> 
> 
> --
> To unsubscribe, e-mail:
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> 
> 
> -------------------------------------------
> Introducing NetZero Long Distance
> Unlimited Long Distance only $29.95/ month!
> Sign Up Today! www.netzerolongdistance.com
> 
> --
> To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
> 
> 
> 



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to