Microsoft ReportViewer: сессия истекла ошибки

В Java все находится в форме класса.

Если вы хотите использовать любой объект, тогда у вас есть две фазы:

  1. Объявить
  2. Инициализация

Пример:

  • Объявление: Object a;
  • Инициализация: a=new Object();

То же самое для концепции массива

  • Объявление: Item i[]=new Item[5];
  • Инициализация: i[0]=new Item();

Если вы не дают секцию инициализации, тогда возникает NullpointerException.

20
задан BartoszKP 22 January 2014 в 23:27
поделиться

3 ответа

У нас была та же проблема. До сих пор мы только нашли его, когда сессия истекла, но они использовали кнопку "Назад" в браузере, который делает агрессивное кэширование, которое прекрасно. Но ReportViewer пытался к обновлению даже при том, что основная страница не сделала. Так, мы просто добавили некоторый hacky Global.asax обработка ошибок:

protected void Application_Error(object sender, EventArgs e)
{
    Exception exc = Server.GetLastError().GetBaseException();
    if (exc is Microsoft.Reporting.WebForms.AspNetSessionExpiredException)
    {
        Server.ClearError();
        Response.Redirect(FormsAuthentication.LoginUrl + "?ReturnUrl=" + HttpUtility.UrlEncode(Request.Url.PathAndQuery), true);
    }
}
13
ответ дан 30 November 2019 в 01:13
поделиться

Тайм-аут Сессии

Это может произойти из-за Вашего тайм-аута сессии, являющегося слишком низким. Проверьте "sessionState" раздел своей сети. Конфигурация, например:-

<system.web><sessionState mode="InProc" timeout="60" /></system.web>

, Который установил бы тайм-аут сессии 60 минут.

Пул приложений Перерабатывает

Другая возможная причина, и тот, с которым мы столкнулись, то, что Ваш пул приложений перерабатывается по некоторым причинам.

В случае это было, потому что мы поражали установку "Maximum virtual memory", я просто повысил это, и все было прекрасно с тех пор.

Взглянули в Вашем Журнале Системного события для 1 010, 1011, 1074, 1077, 1078, 1079, 1 080 и 1 117 событий от W3SVC и видят, перерабатывается ли Ваш пул приложений и если так, он должен указать почему.

3
ответ дан 30 November 2019 в 01:13
поделиться

Каков вопрос? Сессия истекла, и они не могут продолжить.

Проверка скорость обработки отчета. Сборка в некотором сравнительном тесте или просто просит, чтобы они измерили обработку отчета.

Легко может быть то, что это работает на Вас, но не на них (медленная сеть, больше данных для обработки, более медленный сервер БД, и так далее).

Редактирование: Вот другой explanaition и возможно решение для проблемы, но я не повторно комментирую для определения номера рабочего процесса к 1 на procudtion среде.

0
ответ дан 30 November 2019 в 01:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: