Do you see the same behavior if you make a static .html page containing a hard-coded JSON response and point your browser client at that URL?
On Wed, Apr 16, 2008 at 12:25 PM, Danilo Luiz Rheinheimer < [EMAIL PROTECTED]> wrote: > Jim, > > Thanks for your help. > > I am not setting the content-length on my servlet > code. > But if I see the response headers (using firebug) I > have this result : > > Content-Length: 4332 > Content-Type: text/html > > But another tool I have show me the page size as 4276. > > If I print the size of my response with : > > s.getBytes().length > > (where s is my response, see code on previous message) > > I get the value 4276. > So I think you can be right on the cause of the > problem. > > But how is the right way of set the content lenght ? > > I try this : > > // other data headers > response.setDateHeader ("Expires", 0); > response.setContentType("text/html"); > String s = ... // creates JSON String > response.setContentLength(s.getBytes().length); > PrintWriter w = response.getWriter(); > w.write(s); > response.setStatus(HttpServletResponse.SC_OK); > > The problem still happens. > > Then I try this : > > byte[] data = s.getBytes(); > > response.setContentLength(data.length); > > ServletOutputStream ouputStream = > response.getOutputStream(); > ouputStream.write(data, 0, data.length); > ouputStream.flush(); > ouputStream.close(); > response.setStatus(HttpServletResponse.SC_OK); > > But still no solution. > The response header keep showing Content-Length=4332. > > How I can set the Content-Length in a reliable way ? > From where this 4332 value comes from ? > > Danilo. > > --- Jim Cox <[EMAIL PROTECTED]> wrote: > > > Does the client get a "Content-length" header, and > > if so does the actual > > length of the response body match? If not it has to > > either timeout or wait > > for the server to close the connection. > > > > On Wed, Apr 16, 2008 at 11:33 AM, Danilo Luiz > > Rheinheimer < > > [EMAIL PROTECTED]> wrote: > > > > > Hi, > > > > > > I have a Java application running on a Tomcat > > server > > > (last version of the 5.5 serie). Java version is > > 6. > > > I have a servlet inside this application who > > returns > > > json to the browser (if you do not know json it is > > > just a text). > > > This process it taking a very long time, > > something > > > like 10 seconds. > > > I put some simple debug code inside my servlet to > > > show how much time the servlet takes to process > > it. > > > The time is short like 0.5 seconds. > > > Still to the browser it takes 10 seconds ! > > > If I type the servlet url on the browser I can > > see > > > it returns the result fast (the json shows on the > > > browser screen after 0.5 seconds). > > > But it do not release the http connection to the > > > server. It keeps the message 'receiving data from > > ...' > > > on the botton of the browser for almost 10 > > seconds. > > > There are not a big load on the server at the > > moment > > > of this tests. In fact it is only me. > > > > > > The resumed servlet code is something like this : > > > > > > > > response.setHeader("Cache-Control","no-cache"); > > > response.setHeader("Pragma","no-cache"); > > > response.setDateHeader ("Expires", -1); > > > > > response.setHeader("Cache-Control","no-store"); > > > response.setDateHeader ("Expires", 0); > > > > > > response.setContentType("text/html"); > > > > > > String s = ... // creates JSON String > > > PrintWriter w = response.getWriter(); > > > w.write(s); > > > > > > As you can see very standard I think. > > > I have the no cache headers because the json is > > > generated at every time and can not be cahed. > > > > > > Someone has any idea of what the problem is ? > > > > > > Danilo. > > > > > > > > > > > > > > > > ____________________________________________________________________________________ > > > Be a better friend, newshound, and > > > know-it-all with Yahoo! Mobile. Try it now. > > > > > > http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ > > > > > > > > > --------------------------------------------------------------------- > > > To start a new topic, e-mail: > > users@tomcat.apache.org > > > To unsubscribe, e-mail: > > [EMAIL PROTECTED] > > > For additional commands, e-mail: > > [EMAIL PROTECTED] > > > > > > > > > > > > > > ____________________________________________________________________________________ > Be a better friend, newshound, and > know-it-all with Yahoo! Mobile. Try it now. > http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ > > --------------------------------------------------------------------- > To start a new topic, e-mail: users@tomcat.apache.org > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >