Re: Client side waiting & timeout



Simon_21 wrote:
I have a servlet which is invoked from a jsp page. While the serlvet
is executing, the jsp page is waiting for the servlet to complete.
When the servlet completes, it informs the waiting jsp to redirect to
another page. The waiting jsp has implemented onload which will
redirect to the page informed by the servlet

Server : (tomcat 6.0), Browser - IE 6.0, OS - WinXP

When the servlet takes a long time to return, the page is not
redirected. It seems the browser has given up on the request or timed
out . If the servlet comes back quickly, it works fine. The problem is
seen when the servlet takes a long time to finish.

//waiting jsp code

Almost irrelevant.

var tab = FindElementById( "dynamicDisplay" ) ;

Where is FindElementById() defined, and why does it have an identifier that
suggests a constructor or a factory?

if( Number( x ) == 0 )

This is pointless. Unlike Java, ECMAScript implementations implement `=='
as a type-converting comparison that implicitly does more efficiently what
you write explicitly here.

else if( Number( x ) == 1 )
[aso.]

Very inefficient and hard to maintain. Consider this instead:

if (x >= 0 && x <= 4)
{
tab.innerHTML = display_val+ "...." +display_end;
y = (x + 1) % 5;
}

window.setTimeout( "dynamicDisplayScript(" + y + ", '" + info
+ "' )", wait );

You might want to use the well-supported (JavaScript 1.2+, NN 3+, IE 5+)

window.setTimeout(
function() {
dynamicDisplayScript(y, info);
},
wait);

instead. However you do it, don't forget to store your timeout and clear it
onunload.

<% String url = ( String )request.getAttribute( "RedirectURL"); %>

Isn't that even pointless in Java? I suppose request.getAttribute() already
returns a reference to a String object -- why the typecast?

window.location = url;

This is not going to work, of course. The client-side script does not know
about the server-side `url' variable. You will need to do something like

<%= "window.location = '" + request.getAttribute("RedirectURL"); + "';" %>

i.e. the server-side script generating client-side code. Don't forget to
properly escape the variable value or your client-side string literal might
break.

[...]
Appreciate any help

Redirect server-side instead.

BTW, your generated markup is not Valid. See http://validator.w3.org/


PointedEars
--
realism: HTML 4.01 Strict
evangelism: XHTML 1.0 Strict
madness: XHTML 1.1 as application/xhtml+xml
-- Bjoern Hoehrmann
.



Relevant Pages

  • Re: New to JSP world
    ... via a supplied java based API that was written by my company. ... If the e-mail address is not found I need to redirect to an eror page. ... I personally prefer Servlet over Scriptlet because I want to keep java code separate from the jsp. ...
    (comp.lang.java.programmer)
  • IE6 macht Probleme mit multipart/form-data Formularen und folgendem Redirect
    ... Man könnte sich aber auch ein INPUT ... mit Typ FILE denken -> Formular zum Upload von Dateien. ... Das Servlet erhält die korrekte POST-Transaktion, ... Nur IE6 ignoriert das Redirect. ...
    (microsoft.public.de.german.inetexplorer.ie6)
  • Re: how to apply time constraints to JSP page
    ... How can this timer thread be interfaced with oher ... thread class constructor and then in the run method redirect the page ... How you go about blocking access is up to you; I'd recomment a filter ... (servlet filter, if you're just using the servlet API, or whatever ...
    (comp.lang.java.programmer)
  • Re: Java Servlet on Sun server
    ... > and specify the one and only class file as the servlet class. ... > I tryed placing the redirect in both service methods, ...
    (comp.lang.java.help)