Classic ASP on IIS - Timeout Session not expiring
I have an classic ASP website on IIS(both IIS 6,and 8) and both perform the same. We've had this issue for years on IIS 5,6,7,8 and never could figure it out. I have a session timeout setting on the IIS application pool of 120 minutes. I do not have
a session.timeout setting in any of the ASP code itself. I do have a Session.Abandon in the global.asa file, which works well.
Most of the time if a user is idle for > 120 minutes, it gives them a message that their session has timed out, expires the session and redirects them back to the login page. This is how it should work and 95% of the time is does.
The issue I have is that about 5% of the time, some users seem to be able to keep the session alive beyond the 120 minutes. Some for days.
I'm wondering if anyone has any ideas what could cause this? Some ideas that I thought of are below...but I really don't know.
I assume they keep their browsers open for days, but could a user that has a browser window open but sitting idle AND on another TAB of that same browser be active on other websites? Does that activity make the TAB with my application still active/not idle?
I've tested this on several environments but not able to replicate.
Some type of software like a URL filter, proxy server or Antivirus could be causing their browser to not be idle?
Of course a user can keep the session idle if they use the app beyond the 2 hours, but it is rather unlikely they do this, especially for days.
Its hard to troubleshoot since the users are all customers with different browsers and environments. So I have no clue if its a certain browser, browser version, or their PC/network environment.
Any ideas?
pablo
Hello,
forums.iis.net also has a Classic ASP forum.
As Microsoft's IIS forums are on a different platform, we cannot move the question for you.
Karl
When you see answers and helpful posts, please click Vote As Helpful, Propose As Answer, and/or Mark As Answer.
My Blog: Unlock PowerShell
My Book:
Windows PowerShell 2.0 Bible
My E-mail: -join ('6F6C646B61726C406F75746C6F6F6B2E636F6D'-split'(?<=\G.{2})'|%{if($_){[char][int]"0x$_"}})
Similar Messages
-
Timeout Session - Expiration time of Webdynpro application
Hello,
I set the sap.expirationTime property of my application to 1 hour, know the expiration time of my application is one hour. After time out (one hour) I am getting default 500 internal server error page. But as per the requirement we need to display a custom message instead of 500 internal server Error.
i.e.need to Redirect to Custom page with custom message instead of 500 internal server error page.
i try to follow as per this link [Timeout of a WebDynpro session;
but found that in NW 7.0 the parameter sap.sessionExpiredURL is not available anymore. How can archive this?
Conclusion: If there is a timeout session, instead of 500 internal error page how to display a custom messages?
Thanks & Regards
Maha
Edited by: Maha Hussain on Feb 10, 2009 12:00 PMHi Maha,
With sap.expirationTime property, the application will certainly be expired.
If your requirement suits for the scenario just try out the following workaround.
If you want show a custom message only, you can use TimedTrigger UI Element instead of setting expirationTime just set dealy for this and in the action kust navigate to the view and displaye the custom message in that.
Regards,
Siva -
Session timeout = 0 in sip.xml causes app session to expire instantly
Hi
I used 0 as the session timeout value by specifying in sip.xml. According to the JSR, 0 or less value for the session timeout implies session will never expire.
However the session times out as soon as call is executed.
<session-config>
<session-timeout>0</session-timeout>
</session-config>
Thanks
RuchirHi,
A session must always expire eventually - it is impossible to practically reserver resources for a session indefinitely. The general interpretation of a "0" value is not that the session will be maintained indefinitely, but that it will be expired by the container based on the container's management of resources. It it not advisable to attempt to define sessions that will never expire in any case.
BR,
-Mike -
ASP timeout value not updating correctly
MS Server 2000
MS SQL Server 2003
Connection timeout not updating correctly. In Enterprise Manager I updated from 600 to 900 seconds. I had some connections issues and the solution said to modify the properties of the DB user to grant it 'write' privilege. It solved the
first issue but now it is timing out after 300 seconds. After searching again I saw something about modifying the timeout for the user. Could this be the solution and how do you do that.
Classic ASP. In the code I use:
Server.CreateObject("ADODB.Command")
Thank you in advance.Hello,
You can try to using the CommandTimeout property to specify the number of seconds to wait while attempting to execute a command. For example:
set comm=Server.CreateObject("ADODB.Command")
comm.CommandTimeout=600
Reference:http://www.w3schools.com/ado/prop_commandtimeout.asp
Regards,
Fanny Liu
Fanny Liu
TechNet Community Support -
Script Timeout error in classic ASP
Hi ,
In classic asp , i am using Stored procedure to fetch the result from oracle database . my database have 85Lakhs records . approx. 30 records are being inserted into the table. at the same time some users trying to fetch the data from same table.now i am getting script timeout error after long wait .it was an intermittent issue (sometimes it is working and sometimes it is not working). i thought it was because of performance issue with stored procedures . but in oracle Readers cannot block writers and Writers cannot block readers.so no issues with database side.i couldn't replicate the issue . i am wondering what will be the rootcause for this issue. is there anything i need to modify with the script side.by increasing the timeout property is the only solution?i tried to modify the timeout property to 180 seconds in classic asp page. please give your valuable suggestion.
Thanks.
Regards,
BossHi,
This error is thrown by the Flash Player when a script takes more than 15 seconds to execute i.e. if your script executes continously for 15 seconds with out letting the Flash Player render the UI, this error is dispatched. Probably the data returned is pretty huge, try splitting the data or use pseudo threading as explained in the URL below.
http://blogs.adobe.com/aharui/2008/01/threads_in_actionscript_3.html
http://www.actionscript.org/forums/showthread.php3?t=185320
Hope this helps. -
Re: [iPlanet-JATO] Re: session timeout when not submitting to a handler
Mark--
I know what's happening here, but am curious about your approach. You said
in an earlier email that you were generating links directly to JSPs, but
from what you are describing, you are generating JATO-style links to access
JATO pages. Nothing wrong with that, but there is a signficant difference.
Actually, it just occurred to me, I'm wondering what your URLs look like.
The way the request dispatching works in JATO is it ignores anything after
an initial "." in the final part of the URL path. For example, a request
for "/myapp/module1/MyPage.jsp" doesn't actually try to hit the JSP, instead
it tries to hit the JATO page "/myapp/module1/MyPage".
The end result is that you may think you are accessing a JSP directly, but
are instead accessing a JATO page. The reason the request dispatching works
this way is because it is illegal to access JATO JSPs directly, and there is
actually a (disabled) JATO feature that piggybacks on the use of the
dot-delimited URL.
So, now I need to understand your intent. I wasn't really sure why you were
generating direct JSP/page links to begin with. This works against the Type
II architecture JATO uses, in which all JATO requests go back to the
controller servlet.
If you are trying to design something like a menu page, you may have thought
that it was burdensome to create a number of HREF children, plus implement
event handlers for each of them. This definitely would be burdensome beyond
just a handful of links, but this is why JATO provides other mechanisms for
doing what I'll call here "polymorphic HREFs".
Assuming this menu page scenario, the easiest thing to do is to simply use
one HREF child on the page, and add a value to it each time it is rendered
that distinguishes it from the other instances on the page. In your event
handler for the HREF, you simply check this value and use it to decide which
page to forward to. You can add a value to an HREF or Button by using the
"addExtraValue()" method. Or, if you are using JATO 1.2, you can add extra
query string NVPs right in the JSP document using the "queryParams"
attribute of the <jato:href> tag. Thus, your one HREFchild and event
handler become "polymorphic" because what they do depends on the context in
which they are invoked.
Now, I still don't have confirmation that this is what you were trying to
do, so until I do, let me explain the exception you're seeing. JATO assumes
that when a request comes in for a page that includes the pageAttributes
NVP, it is a request coming from a previously generated JATO page. Because
of the way JATO works, this means that the request dispatching code should
send the request back to the originally rendered page. For example, if Page
A renders an HREF, which the user then activates, JATO sends the request
back to Page A for handling. All of the HREFs and forms generated during
rendering of Page A actually refer back to Page A, regardless of where those
links or buttons actually pass the request in their event handlers/Command
objects.
So, what's happening when you include the pageAttributes in your HREFs is
that JATO is assuming that a request is being sent to the target page, with
the assumption that the target page has a mechanism in place to handle the
request. This assumption relies on the specification of the "originator" of
the request being specified in the request. For links/HREFs, the name and
value of the HREF is sent along with the request. For forms, the name and
value of the button that was pressed are sent in the request. JATO uses the
presence of these name/value pairs to decide which event handler, or which
Command object, to invoke to handle the request.
The exception you are receiving is saying that there was no object on the
target page that indicated it could handle the request. This is to be
expected, since you have not specified a query parameter that indicates
which CommandField child is responsible the request. However, this is where
I see the disconnect, because that is not what I believe you were trying to
do (as explained above).
So now, given all the information above, can you tell me what you're trying
to accomplish, and whether or not the info I've given you has helped you to
design a mechanism more in line with a JATO approach? If not, given that I
understand what you're trying to do, I can offer a more concrete solution.
Todd
----- Original Message -----
From: <Mark_Dubinsky@p...>
Sent: Monday, November 05, 2001 2:54 PM
Subject: [iPlanet-JATO] Re: session timeout when not submitting to a handler
This is the exception we get:
(And BTW, leaving a blank value for the pageAttributes doesn't help)
[05/Nov/2001 17:49:18:4] error: <portalServlet.processRequest>
javax.servlet.ServletException: The request was not be handled by the
specified handler
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Compiled Code)
at
javax.servlet.ServletException.<init>(ServletException.java:107)
at
com.putnaminvestments.common.jato.ApplicationServletBase.dispatchRequ
est(Compiled Code)
at
com.putnaminvestments.common.jato.ApplicationServletBase.processReque
st(Compiled Code)
at
com.putnaminvestments.bp.portal.portalServlet.processRequest(Compiled
Code)
at
com.putnaminvestments.common.jato.ApplicationServletBase.doPost(Compi
led Code)
at
com.putnaminvestments.common.jato.ApplicationServletBase.doGet(Compil
ed Code)
at javax.servlet.http.HttpServlet.service(Compiled Code)
at com.putnaminvestments.bp.bpServletBase.service(Compiled
Code)
at javax.servlet.http.HttpServlet.service(Compiled Code)
at
com.netscape.server.servlet.servletrunner.ServletInfo.service(Compile
d Code)
at
com.netscape.server.servlet.servletrunner.ServletRunner.execute(Compi
led Code)
at com.kivasoft.applogic.AppLogic.execute(Compiled Code)
at com.kivasoft.applogic.AppLogic.execute(Compiled Code)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at com.kivasoft.thread.ThreadBasic.run(Compiled Code)
at java.lang.Thread.run(Compiled Code)
--- In iPlanet-JATO@y..., "Todd Fast" <Todd.Fast@S...> wrote:
Mark--
Initially we tried to add the pageAttributes NVP as well, but that
was
causing an exception, so we stopped doing that.That's odd--what was the exception?
Our problem now is that when the SessionTimes out it does not go
to
onSessionTimeout method as in processRequestMethod of the
ApplicationServletBase it looks for pageAttributes. If it is notnull
then only onSessionTimeOut method is called.This is sadly the only technique for determining if a session hastimed out
and a new one been created, versus the initial creation of thesession.
Is there any work around for this? Maybe you can suggest how topass
the pageAttributes without causing the initial exception?Definitely--let me know what the exception was and I'll be able tosuggest
something. However, it shouldn't really be any harder thanappending a
"jato.pageAttributes=" empty NVP on the HREF.
Todd
Todd Fast
Senior Engineer
Sun/Netscape Alliance
todd.fast@s...
For more information about JATO, please visit:
http://developer.iplanet.com/tech/appserver/framework/index.jspOK, here's what I'm trying to do: We have, like you said, a menu
page. The pages that it goes to and the number of links are all
variable and read from the database. In NetD we were able to create
URLs in the form
pgXYZ?SPIDERSESSION=abcd
so this is what I'm trying to replicate here. So the URL that works
is
pgContactUs?GXHC_GX_jst=fc7b7e61662d6164&GXHC_gx_session_id_=cc9c6dfa5
601afa7
which I interpreted to be the equivalent of the old Netd way. Our
javascript also loads other frames of the page in the same manner.
And I believe the URL-rewritten frame sources of a frameset look like
this too.
This all worked except for the timeout problem. In theory we could
rewrite all URLs to go to a handler, but that would be...
inconvenient. -
I have a java code that expires user sessions after 30 min.But the session does not expire in Firefox version 4 where as it expires in all previous versions
A good place to ask questions and advice about web development is at the mozillaZine Web Development/Standards Evangelism forum.<br />
The helpers at that forum are more knowledgeable about web development issues.<br />
You need to register at the mozillaZine forum site in order to post at that forum.<br />
See http://forums.mozillazine.org/viewforum.php?f=25 -
LMS3.2: is it possible to modify timeout session
Hi,
On windows, is it possible to modify the default timeout session ?
What is the default value ?
Many thanks for your help,
Elisabethwhich timeout?? - I assume you are talking about the web server timeout !?
I found this in one of my notes I made years ago ...
... the entry is still there in LMS 4.1 so I believe it is still valid...
(I do not know if you have to restart dmgtd afterwards)
make a backup of the following file:
NMSROOT/MDC/tomcat/webapps/classic/WEB-INF/web.xml
open the file in a text editor and look for the tag below; the session-timeout is given in minutes (default: 2h);
keep in mind that changing the value has impact on the web server load (i.e. do not make it too long..)
the tag should be at the very end of the file:
120 -
Crystal Report and Classic asp
Hello all,
I want to know how to use ASP3.0(Classic) and Crystal Report10.0.
I used Begin here sample from our forum but it is giving error
like Error Occurred Reading Records: Logon failed. Details: ADO Error Code: 0x80040e4d Source: Microsoft OLE DB Provider for SQL Server Description: Login failed for user 'sa'. SQL State: 42000 Native Error: 18456
Please help me in this regard asap.
Thanks in Advance,
Vamsi
Edited by: vamsidhar on Sep 10, 2011 7:25 PMThe reasons I want you to have SP 6 is because
1) It is the latest fix release and I will not work on anything not patched with the latest fixes. E.g.; why test on an older runtime when the new one may already have the solution?
2) You mentioned you want to be using IE 8. And as the blog I refered you to (Report Designer Component (RDC) in classic ASP applications on Win 2008 Server and Win 7 - Possible Solutions) states;
"...this blog only applies to Crystal Reports XI release 2, patched up to Service Pack 6 ..."
As to how to find SP 6. You could use the search box at the top right of this web page and type in "service pack 6 crystal" - without the quotes and the 5th hit is a KBase:
[1421033 - Where to find Crystal Reports XI R2 Service Pack 6|http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_erq/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes.do]
Alternatively, you could go to the downloads page directly at http://service.sap.com/sap/bc/bsp/spn/bobj_download/main.htm, select the product and voila. Anyhow, SP 6 link:
https://smpdl.sap-ag.de/~sapidp/012002523100015859952009E/crxir2win_sp6.exe
SP 6 RDC MSM:
https://smpdl.sap-ag.de/~sapidp/012002523100000634032010E/crxir2sp6_rdc_mm.zip
Which you can also find at the above downloads page.
BTW.; since you are a "newbee" in all of this, why not be a newbee in a technology that will take you some distance? CR XI R2 is the last version to ship the RDC (e.g.; RDC has been retired). Patch support had expired in June of this year. Any support expires next June. If you go with .NET or Java, you are assured years of support...
Ludek -
Script Time out error in classic asp
Hi ,
In classic asp , i am using Stored procedure to fetch the result from oracle database . my database have 85Lakhs records . approx. 30 records are being inserted into the table. at the same time some users trying to fetch the data from same table.now i am getting script timeout error after long wait .it was an intermittent issue (sometimes it is working and sometimes it is not working). i thought it was because of performance issue with stored procedures . but in oracle Readers cannot block writers and Writers cannot block readers.so no issues with database side.i couldn't replicate the issue . i am wondering what will be the rootcause for this issue. is there anything i need to modify with the script side.by increasing the timeout property is the only solution?i tried to modify the timeout property to 180 seconds in classic asp page. please give your valuable suggestion.
Thanks.
Regards,
BossHi,
How big is your EJB application? i.e. how many EJBs do you have?
Would you please try to deploy your application using the command line tool "asadmin" and see if it is also hanging? This will help us to tell if the deployment process that is hanging or the deploytool itself that is hanging. The "asadmin" tool is located under $INSTALL_HOME/bin.
Thanks,
Q^2 -
Your login session has expired
Hi
We have upgraded customer instance from 11i10cu2 to 12.0.6
Its a 2 node RAC (on linux) and 2 application nodes , pcp and load balancing implemented
Customer has reported the followign issue
Error
Cannot display page
You cannot complete this task because one of the following events caused a loss of page data:
. You accessed this page using browser's navigation buttons (the browser Back button, for example).
. Your login session has expired.
. A system failure has occurred
we had set the session cookie domain as null as per metalink note 741803.1 but this hasnt helped
Also we had set the ICX session time out as null . initail value was 30
customer says issue could be with load balancer because when he by=passes load balancer , it works
for now I passed metalink note 387306.1
to customer.
Changes With Load Balanacer Configurations.
Cause The session persistance was set to low. The Microsoft IE browser is the only browser affected due to the HTTP 1.0 header with IE. IE will break cookie persistence.
Solution
Increase the persistence timeout = 1 day on the Load Balancer.
Can some one pl help on what can be issueHi,
I believe this issue is addressed in the following documents.
Note: 387306.1 - Random error Your login session has expired when using Load Balancing
https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=387306.1
Note: 361397.1 - Random error Your login session has expired when using Big IP F5 DMZ Loadbalancing
https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=361397.1
If you want to know the cause of the error, log a SR and ask Oracle Support for the bug details.
Regards,
Hussein -
Classic ASP web app trying to acces remote SQL Server.
Hi
I have a classic asp web application which accessing a remote SQL Server 200. I am trying to connect using the following connection string in Global.asa file. For some reason not connecting to the remote SQL Server 200. The string is as follows.
Session("dsn") = "provider=SQLOLEDB;app=AppName;server=SERVERNAME;uid=;password=;database=DBName;Trusted_Connection=No"
Session("datadsn") = "data provider=SQLOLEDB;app=AppName;server=SERVERNAME;uid=;password=;database=DBName;Trusted_Connection=No"
Session("server") = "SERVERNAME"
Let me know if I am missing something or doing something wrong?
VarunSQL Server Error Log has no error
But I found couple of errors in Application EventViewer
The VB Application identified by the event source logged this Application Globalization: Thread ID: 5312 ,Logged: -2147168246 New transaction cannot enlist in the specified transaction coordinator. Error Source: Microsoft OLE DB Provider for SQL Server->ValidateUser
A caller has attempted to propagate a transaction to a remote system, but MSDTC network DTC access is currently disabled on machine 'MyMachineName'. Please review the MS DTC configuration settings.
Varun -
Hi to all,
When will the session object expire automatically. I did not set the time interval. Suppose i will close the browser forcely will the session expire or not ?Closing the browser will not force the session to expire.
The session will expire after the default timeout value specified in your server's web.xml. -
Hi I am trying to set a appointment for the Genus bar on my computer. I know for a fact that my login is correct. I have used it to sign in here and make a apointment (had to do it on my phone). When I get to the appointment area it tells me to resign, and tells me "SORRY" Your lass session has expired. Pleae sign in using your apple id account name and password. I have tried resetting my password and all. I am running Internet Explorer version 11 and my windows is 7. Any help would be nice...
ok.. I tried this three times and kept getting that access denied thing when I clicked post my questions. So now maybe I wont have to typ this a fifth time....
I have a MAC computer with Sync. Was set up under sync Beta. I have an Android phone synced to it that was synced using the pair this device function. It works perfectly. I just got a new Android Tablet and am trying to add it to my sync and it does not seem to have the pair my device function. It insists I log into my sync account. So I try it and it tells me invalid userid/password. I verify and it is the exact email address userid that shows as being my sync account on the MAC. I verify the password on the MAC and it tests out fine. Try the tablet again and invalid.. So I try to reset my password on the tablet and am told my email address/account name does not exist. I just verified it AND Synced my MAC using it!! I have my recovery Key but there is no place to input it into the tablet. There is no place on tablet to enter the link device codes. How can my account be valid and in use on two devices but invalid and nonexistant on the new one? And How do I get the New one to sync with other two? -
Testing to see if a session has expired
Hello all,
I am trying to test to see if the user's session has expired by inserting the following code at the top of the page:
HttpSession sess = request.getSession();
if(sess.getAttribute("userId")=="null"){response.sendRedirect("logon.jsp");}The problem is that when the session expires and I refresh or go to the page with the above code, I get a null pointer exception and, of course , it wont redirect.
Am I doing the comparison improperly?
TIA!!I have changed my code somewhat but I still cant get the page to redirect.This is the first 20 lines of code:
<%@page import="java.util.*,
java.net.*,
java.text.*,
java.util.zip.*,
java.io.*,
javax.servlet.http.*,sensorPac.methodClass"
%>
<%
System.out.println("SESSION="+session.getAttribute("userId"));
if(session.getAttribute("userId") == null){response.sendRedirect("logon.jsp");}%>When I look at the tomcat console window I get the following:
When I first hit the page with a valid session I get:
SESSION = fortegr
When I refresh or revisit the page after a minute (session.setMaxInactiveInterval(1);)
I get:
SESSION=null
Once again it will not redirect.
Any ideas?
TIA!
Maybe you are looking for
-
Itunes says I must update to 11.1, but everytime I try to run it I get an error message saying: "an error occured while running installation" Help?
-
Dues to the size of my default mailbox database I created two new mail box databases and moved (using EMC) the existing user mailboxes from the default mailbox into the two new ones (half in each new database). That left me with the Discovery Search
-
What is the use of a proxy client to test web service from ABAP code?
In NW640, we need to create a proxy client to test our web service from a ABAP code. Why is this so? What is the significance of a proxy client? Is this mandatory? Can we test the webservice from a ABAP code without proxy client?
-
whats the fix that i can perform or will i have to send it to apple
-
IPhoto not completely restoring.
My wife turned the power off on the iMac while I was trying to delete several events from iPhoto. The library could then not be opened. I tried rebuild under the "option + command" menu when I tried to restart. Nothing worked. So, I resorted from a p