Christopher Schultz wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > David, > > On 5/14/2009 8:34 AM, David kerber wrote: > >> len = req.getContentLength(); >> b = new byte[ len ]; >> > > Don't forget to check to see if getContentLength() returned zero. > I do, it's just not in that code snippet. > What is the content-type here? Is it application/x-www-form-urlencoded? > Are you calling req.getParameter() or any of the same family of > functions? If both of those are true, then Tomcat has already read the > body of the request, and you won't be able to re-read it. > I don't recall the content-type off the top of my head (and I don't have the source of the sending app at hand), and I don't use req.getParameter() at all. But the code works; it just seems to be a little slow. > >> iStream = req.getInputStream(); >> /* this is the line 198 that the above thread dump is waiting for: */ >> strLen = iStream.read( b, 0, len ); >> iStream.close(); >> > > If you want a String, why not use req.getReader() instead of > req.getInputStream()? > At this point, it's still encrypted, and a string may not properly handle some of the bytes. I don't make it a string until I'm done decrypting it (forgot to mention that point in my original post). > I think you may have better luck reading until there is no more input, > What method would you suggest? Create the byte array long enough to handle any possible input and then read without specifying the length? > rather than relying upon the Content-Length matching the available data > (which really /should/ work, but obviously something else is happening > here). > Thanks! D --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org For additional commands, e-mail: users-help@tomcat.apache.org