2010/6/1 Manny Mondeo <[email protected]>:
> Hi ,
> I have written a filter that strips the response of some html tags.
> The filter is working and executing around 30milliseconds.
How do you measure the time?
> The problem is that the request takes around 30 seconds to load this in a
> browser. The filter gets executed fast but the status bar in the browser does
> not complete and the page gets struck to about 25 seconds before the response
> comes and gets rendered.
Maybe it loads images, loads and executes javascript, or maybe your
HTML is invalid. Maybe you have a firewall that scans your traffic for
malware. Have you tried it with a different browser?
> String content = new String(c);
The above line is wrong. Use some explicit encoding.
> StringBuffer buffer = new StringBuffer();
java.lang.StringBuilder may be a bit faster (though it is unlikely
that you will notice).
> //PrintWriter out = httpRes.getWriter();
> PrintWriter out = wrapp.getWriter();
Why wrapp.getWriter(); ??
> httpRes.setContentLength(content.toString().length());
> httpRes.setContentType( "text/html; charset=UTF-8" ) ;
You cannot set charset when you already called getWriter(). Move the
above line higher in the code.
> public PrintWriter getWriter()
> {
> if (writer == null)
> {
> try
> {
> writer = new PrintWriter(new
> OutputStreamWriter(outputStream, this.getCharacterEncoding()));
The above will throw an exception if outputStream is null.
Best regards,
Konstantin Kolinko
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]