MWS can’t tell the difference between a request from a user who has
logged out and a request from a user whose session has timed out, so
there’s no way to do that. You could, however, add a custom portlet to
the shell containing some javascript which would automatically navigate
to some custom mws page when it calculates that the user’s session will
have timed out:
var waitForSessionTimout;
function navigateAwayWhenSessionTimesout() {
// clear existing timer
if (waitForSessionTimeout)
clearTimeout(waitForSessionTimeout);
// wait for 31 minutes
waitForSessionTimeout = setTimeout(function() {
// display custom session-timeout page
document.location.href = “/my-session-timeout-page”;
}, 31 * 60 * 1000); // 31 minutes
}
// start timer
navigateAwayWhenSessionTimesout();
// re-start timer if an ajax request is made
Ajax.Responders.register({
onComplete: function() {
// re-start waiting from now
navigateAwayWhenSessionTimesout();
}
});
See http://docs.sun.com/source/816-6408-10/window.htm#1203758 for docs
on the javascript setTimeout() function, and
http://docs.sun.com/source/816-6408-10/window.htm#1203758 for docs on prototype’s
Ajax.Responders.
(Credit goes to Justin for this response)
#webMethods-BPMS#MWS-CAF-Task-Engine#webMethods