#0
by VitaminC
Разработано приложение на базе веб-расширения. Периодически, на разных этапах, безо всякой системы выпадает ошибка: Server Error in '/' Application. -------------------------------------------------------------------------------- Object reference not set to an instance of an object. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.NullReferenceException: Object reference not set to an instance of an object. Простое обновление страницы несколько раз отрабатывает нормально, потом выдает вышеуказанную ошибку. Причем в разных местах, на разных объектах одного модуля. Поиск по форумам ничего не дал к сожалению. Кто сталкивался с этой проблемой, поделитесь соображениями.
#1
by 1c_asp
С проблемой сталкивался. Конкретного рецепта предложить к сожалению не могу. Я переписывал куски кода, где вываливалась эта ошибка. Как правило там были некоторые косяки. После этого такое сообщение стало вылазить крайне редко. Еще такое вроде бывает, когда кончается тайм аут сессии. Я это борол достаточно сложно, переписыванием всех коннектов к базе на собственный код и хранением параметров соединения в параметрах сессии
#3
by VitaminC
>Как правило там были некоторые косяки. Какого рода косяки? Что примерно искать нужно? У меня тоже код в основном собственный, с созданием коннектов и работы с объектами. Возможно из-за малого опыта в веб-программировании и криво что-то написал. Но по этой ошибке никаких выводов сделать не могу. Не пойму даже в какую сторону думать ( Что интересно, на своем сервере ни разу ни удалось получить эту ошибку. У клиента - вываливается регулярно.
#4
by VitaminC
Да, ссылка явно пустая получается. Но как? Почему? Почему посреди модуля (часть кода успевает отработать)?
#6
by 1c_asp
В какой функции у тебя эта ошибка вываливается ? Попробуй переместить в другую функцию, выполняющуюся позже. Например из OnLoad в PreRender
#7
by 1c_asp
Припоминаю, кажется были у меня такие ошибки. Возникали непонятно откуда и непонятно как раньше работали. Лечились, насколько помню именно через
#8
by VitaminC
Page_Load Что значит через ? Вот допустим на строке reader = (V8DataReader)cmd.ExecuteReader; спотыкается, проверю я на Null, и что делать дальше? Еще раз пытаться отработать код с начала?
#10
by VitaminC
static V8DbConnection connection = new V8DbConnection; ... protected void Page_Load(object sender, EventArgs e) { ... try { ВЫБРАТЬ ПЕРВЫЕ 1 Сотрудник, } }
#13
by VitaminC
По логике программы - нет, вот тот кусок: Я многоточиями заменил получение/обработку данных, на которых по идее ничего такого случаться не должно, чтоб код более читаемый был. На всех строчках reader = (V8DataReader)cmd.ExecuteReader (их там 6 штук), иногда на строках: но тут другая ошибка: External component has thrown an exception. Причем эти строки идут подряд, иногда падает на первой, иногда на второй. Сам понимаешь, между ними ничего не происходит, точнее не должно происходить неординарного.
#14
by 1c_asp
Ну тогда, кроме как окропить сервер святой водой, у меня идей нет. ExecuteReader у меня никогда не падал без ошибки в коде
#16
by 1c_asp
Можно попробовать пошаманить - подвигать код в функции, выполняющиеся позднее. Например в PreRender. Мне пару раз такое шаманство помогло при непонятных косяках
#17
by 1c_asp
еще не уверен, а точно нужна static ? V8DbConnection connection Я в каждой функции заново открываю соединение, тормозов нет, т.к. все равно используется кэш.
#18
by VitaminC
Да, статик остался от старых экспериментов, когда я пытался увеличиить производительность. Почему-то не всегда использует кэшированные соединения, иногда создает новые, из-за чего тормоза. Статик не нужен, уберу.
#19
by 1c_asp
Новое соединение создается тогда, когда идет утечка памяти. Крайне рекомендую включить контроль освобождения объектов (как это сделать написано в самом конце книге о web расширении)
#20
by VitaminC
Трассировка неосвобожденных объектов по дефолту включена у меня на сервере разработки для всех проектов, тут дело в чем-то другом.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Компанента WEB-расширение
- При тестировании: "An attempt was made to access an unnamed file past its end."
- Вылетает ошибка method 'Предупреждение' not supported by automation object
- Web-расширение 7.7+ ISS
- Ошибка СУБД: plan should not reference subplan's variable.
- Ошибка СУБД: plan should not reference subplan's variable.
- Web-расширение vs Терминал сервер
- Странная ошибка "ошибка формата потока" с вылетом из сеанса
- Ошибка выполнения запроса "Ошибка при выполнении операции над данными: Ошибка SQL: Де
- v7: Ошибка СУБД.Внутренняя ошибка dbeng 8
- При отправке сообщения произошла ошибка : Общая ошибка MAPI
- v8: Ошибка СУБД. Внутренняя ошибка компоненты DBENG8 при обмене данными
В этой группе 1С
- v7: Проблема с датой увольнения в ЗУП 2.5.16
- Как выгрузить данные из Босс-Кадровик в ЗУП ?
- Как получить значение поля расшифровки в компоновщике?
- Как сделать выгрузку данных по расписанию?
- Передача данных через ТСД .(терминал сбора данных)
- Внешняя печатная форма РКО, где взять?
- Не работает автоинкремент при вводе нового элемента справочника
- Как задать параметры регистру сведений в запросе?
- 1C 8.1 b postgreSQL
- v8: СКД: чем отличаются 2 отчета?
- Выгрузка в ДБФ
- Как в форме периодического регистра сведений получить срез последних?
- УНФ, загрузка банковского классификатора
- v8: как удалить записи из регистра сведений подчиненный регистратору, у которого нету ссылки на реги
- 8.2. Упр. форма. Как добавить вычисляемую колонку в ТЧ формы документа?
- Работа с формой
- Как захватить видео с видеокамеры Sony DVD-405 на компьютер?
- Как вывести в печатном стандартном документе Заказ поставщику ИТОГО - по КОЛИЧЕСТВУ
- как получить в УПП должность сотрудника на конкретную дату если несколько записей в с
- V8 недостаточно памяти при выполнении запроса ДЗ