2 posts, 1 answers
  1. David
    David avatar
    2 posts
    Member since:
    Nov 2013

    Posted 07 Nov 2013 Link to this post


    We have a long running process on the server end of our ASP.NET Application Running on IIS 7 Integrated Windows Authentication.
    This process can take up to 2 hours and 45 minutes. we wanted the user to be able to view the progress of this action, so we setup a radwindow to open with a radprogressarea/progressmanager to keep the session alive while the process is running. 

    The Progress Area is updating successfully for about the first 5 minutes of elapsed time.

    Then one of two things happen:
    the Page will Ask for credentials
    -> when entering crediential correctly will cause a new request to occur on the server, so a new job is created automatically using the old post request. Progress starting at 0%
    -> when canceling we getting 401 error. The job is still running in the background but the client can no longer see the progress.
    the page goes straight to an error saying can not display page. then after refreshing the server serves the initial page where you could submit a new job. 

    OS:Windows 2008 Server edition
    IIS: version 7
    Authentication: Windows Integrated (Domain Active Directory)
    browser: Internet Explorer 8
    telerik (UI/Skin) version: 2012.2.912.40 
    language: C#

    My questions are:
    Is the Rad Progress Area/Manager not keeping the session alive on the server end?
    Is there something special we need to do for the Ajax requests have the automated authentication per request be run?
    Is there something that telerik is doing that may reset the authentication for the ajax requests?
    Is there something on the client side that is killing the connection to the server if the main page isn't requesting new information since the ajax progress area is using a different socket path.
    any ideas on what could be causing this issue?

  2. Answer
    Hristo Valyavicharski
    Hristo Valyavicharski avatar
    975 posts

    Posted 12 Nov 2013 Link to this post

    Hi David,

    The RadProgressArea and RadProgressManager don't keep the session alive. To prevent the 401 error you may disable the authentication for the Progress Handler:

    <location path="Telerik.RadUploadProgressHandler.ashx">  
                <allow users="*" />      

    This way the progress handler will be accessible for unauthenticated users.

    ProgressArea makes requests to the handler and reads the data from the progressData object. It will stop to make requests automatically if there is no progress. So there is nothing else that kills the connection to the server.

    I think your best option for this scenario is to use a custom implementation. Create your own Web Service, Web Method, Web Socket or Handler which returns the progress data and keep the session alive. Then on the client update the ProgressArea as update the RadProgressArea's progress data object.

    Hristo Valyavicharski
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to the blog feed now.
  3. DevCraft R3 2016 release webinar banner
Back to Top