velocity-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kevin Baynes" <kbay...@seagullsw.com>
Subject RE: Form upload failure
Date Tue, 02 Jul 2002 20:44:48 GMT

Shawn-

I couldn't tell from the code snippet you sent whether my suspicion is
correct.

Look for any objects of global scope in the Servlet (ones that are outside
of the scope of the methods), that are then modified or accessed within the
methods. This is an easy thing to let happen within a Servlet, but it yields
unpredictable behavior as an object is modified by one method while another
is still using it.

I'd have to see the entire file to make sure, but it could be your problem.
You can also test this way: If all your action happens inside of
handleRequest, you can add the "synchronized" keyword to the method
declaration, that will prevent two threads from accessing the method at the
same time. Declare it synchronized and see if your problem goes away... then
fix it, don't leave it synchronized.

~kevin



> -----Original Message-----
> From: Shawn Church [mailto:shawn@boxity.com]
> Sent: Tuesday, July 02, 2002 3:52 PM
> To: Velocity Users List
> Subject: Re: Form upload failure
>
>
> Nick,
>
> I believe Velocity is getting called, because if I submit the
> form multiple
> times, but delay 2-3 seconds between submissions, I don't see a failure.
> Also, once in a while the template gets rendered in the browser,
> followed by
> the (same) error message, so it seems Velocity is happy but
> Apache / Tomcat
> doesn't like the response.
>
> Thanks,
> Shawn
>
> ----- Original Message -----
> From: "Nick Temple" <ntemple@alivecity.com>
> To: "Velocity Users List" <velocity-user@jakarta.apache.org>
> Sent: Tuesday, July 02, 2002 2:26 PM
> Subject: RE: Form upload failure
>
>
> > Hi Shawn --
> >
> > I tend to agree with you.  I do know that uploaded files are a little
> > messier to deal with, however since you aren't actually using the
> paramaters
> > I don't see how that could be a problem.
> >
> > I am curious to see where in the code it actually stops
> processing.  Does
> > Velocity even get called? Is the output thrown away by the
> server engine?
> > Anyway, I'm grasping at straws.
> >
> > Give me a couple of hours and I will get a version running on apache
> 1.3.26
> > / tomcat 4 and see if I can reproduce it.
> >
> > Nick
> >
> > -----Original Message-----
> > From: velocity-user-return-8057-ntemple=alivecity.com@jakarta.apache.org
> > [mailto:velocity-user-return-8057-ntemple=alivecity.com@jakarta.apache.o
> > rg]On Behalf Of Shawn Church
> > Sent: Tuesday, July 02, 2002 2:14 PM
> > To: Velocity Users List
> > Subject: Re: Form upload failure
> >
> >
> > Nick,
> >
> > I am using the same thing in my real code, but for the sake of the
> isolation
> > test I have removed it.  The problem is not related to the actual upload
> > code or any of the com.oreilly package, since I'm not getting that far
> > unless I work around the problem at hand by returning a
> different template
> > (than the one which made the request) to Velocity.  My test code only
> > involves the single template and the single servlet.  To rule out Apache
> and
> > mod_jk, I may try to get it running with IIS (or with Tomcat's web
> server).
> >
> > I added the System.err.println(e.toString()), but it logs no exceptions.
> >
> > Shawn
> >
> > ----- Original Message -----
> > From: "Nick Temple" <ntemple@alivecity.com>
> > To: "Velocity Users List" <velocity-user@jakarta.apache.org>
> > Sent: Tuesday, July 02, 2002 1:11 PM
> > Subject: RE: Form upload failure
> >
> >
> > > Here is the system I am using to handle file-uploads:
> > >
> > > http://www.servlets.com/cos/index.html
> > >
> > > However, if the system doesn't hang when POSTing to a different
> > > form/servlet, I tend to think that it isn't the POST at all rather
> > > "something" in the code.
> > >
> > > Try writing some code in your try / except clause to see if
> an error is
> > > being thrown and ignored (and any places the servlet might be throwing
> an
> > > exception).
> > >
> > >   try
> > >   {
> > >    return getTemplate(templateName);
> > >   }
> > >   catch (Exception e)
> > >   {
> > >     System.err.println(e.toString());
> > >   }
> > >
> > > Nick
> > >
> > > -----Original Message-----
> > > From:
> velocity-user-return-8053-ntemple=alivecity.com@jakarta.apache.org
> > >
> [mailto:velocity-user-return-8053-ntemple=alivecity.com@jakarta.apache.o
> > > rg]On Behalf Of Björn
> > > Sent: Tuesday, July 02, 2002 12:58 PM
> > > To: Velocity Users List
> > > Subject: Re: Form upload failure
> > >
> > >
> > > Do not know if this might be of any help to you...
> > >
> > > http://www.orionsupport.com/articles/fileupload.html
> > >
> > > It did help me once =)
> > >
> > >
> > > /Björn
> > > ----- Original Message -----
> > > From: "Shawn Church" <shawn@boxity.com>
> > > To: <velocity-user@jakarta.apache.org>
> > > Sent: Tuesday, July 02, 2002 7:17 PM
> > > Subject: Form upload failure
> > >
> > >
> > > Does anyone know of any limitations or problems with Velocity 1.2 /
> Apache
> > > 1.3.24 / Tomcat 3.3a, relating to multipart/form-data templates
> containing
> > > <INPUT TYPE=FILE> ?  Specifically in the case where I have
> this type of
> > > template, whose form action is to invoke a servlet which then does
> nothing
> > > except return the same template (which made the request) to
> Velocity, I
> am
> > > getting this from Apache:
> > >
> > > HTTP/1.1 200 OK Date: Tue, 02 Jul 2002 16:48:35 GMT Server:
> Apache/1.3.24
> > > (Win32) mod_jk/1.1.0 Connection: close Transfer-Encoding: chunked
> > > Content-Type: text/html; charset=iso-8859-1
> > >
> > > This problem occurs if I select a file for upload, or if I do
> not select
> > > anything but rather just resubmit the form a few times in rapid
> > succession.
> > > If I do not select a file, and submit the form no more often than once
> per
> > > every couple of seconds, the problem does not occur.
> > >
> > > Here is a test template:
> > >
> > > <html>
> > > <form action="/ec/servlet/upload" method="post"
> > > enctype="multipart/form-data">
> > >   Which file to upload? <INPUT TYPE=FILE NAME=file1> <BR>
> > > <input type=submit>
> > > </form>
> > > </html>
> > >
> > >
> > > Here's a snippet of the upload servlet, which is coded to do nothing
> > except
> > > return the same form which made the request:
> > >
> > > ...
> > > public class upload extends VelocityServlet
> > > {
> > >  public Template handleRequest( HttpServletRequest _req,
> > HttpServletResponse
> > > _res, Context _context)
> > >  {
> > >   String templateName = "upload.vm";
> > >
> > >   // return the appropriate template
> > >   try
> > >   {
> > >    return getTemplate(templateName);
> > >     }
> > >     catch (Exception e)
> > >     {
> > >
> > >   }
> > >
> > >   return null;
> > >  }
> > > ...
> > >
> > > My environment is Velocity 1.2 / Apache 1.3.24 / Tomcat 3.3a, IE 6.0,
> > > running on Win2k.  If my servlet returns a different template than the
> one
> > > which made the request, everything is fine.
> > >
> > > Shawn
> > >
> > >
> > >
> > >
> > > --
> > > To unsubscribe, e-mail:
> > > <mailto:velocity-user-unsubscribe@jakarta.apache.org>
> > > For additional commands, e-mail:
> > > <mailto:velocity-user-help@jakarta.apache.org>
> > >
> > >
> > >
> > > --
> > > To unsubscribe, e-mail:
> > <mailto:velocity-user-unsubscribe@jakarta.apache.org>
> > > For additional commands, e-mail:
> > <mailto:velocity-user-help@jakarta.apache.org>
> >
> >
> > --
> > To unsubscribe, e-mail:
> > <mailto:velocity-user-unsubscribe@jakarta.apache.org>
> > For additional commands, e-mail:
> > <mailto:velocity-user-help@jakarta.apache.org>
> >
> >
> >
> > --
> > To unsubscribe, e-mail:
> <mailto:velocity-user-unsubscribe@jakarta.apache.org>
> > For additional commands, e-mail:
> <mailto:velocity-user-help@jakarta.apache.org>
>
>
> --
> To unsubscribe, e-mail:
> <mailto:velocity-user-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail:
> <mailto:velocity-user-help@jakarta.apache.org>


--
To unsubscribe, e-mail:   <mailto:velocity-user-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:velocity-user-help@jakarta.apache.org>


Mime
View raw message