Почему не работает суфд сегодня. Решение типичных проблем при работе в портале суфд
JavaScript может быть кошмаром при отладке: некоторые ошибки, которые он выдает, могут быть очень трудны для понимания с первого взгляда, и выдаваемые номера строк также не всегда полезны. Разве не было бы полезно иметь список, глядя на который, можно понять смысл ошибок и как исправить их? Вот он!
Ниже представлен список странных ошибок в JavaScript. Разные браузеры могут выдавать разные сообщения об одинаковых ошибках, поэтому приведено несколько примеров там, где возможно.
Как читать ошибки? Перед самим списком, давайте быстро взглянем на структуру сообщения об ошибке. Понимание структуры помогает понимать ошибки, и вы получите меньше проблем, если наткнетесь на ошибки, не представленные в этом списке.
Типичная ошибка из Chrome выглядит так:
Uncaught TypeError: undefined is not a function
Структура ошибки следующая:
Теперь к самим ошибкам.
Uncaught TypeError: undefined is not a functionСвязанные ошибки: number is not a function, object is not a function, string is not a function, Unhandled Error: ‘foo’ is not a function, Function Expected
Возникает при попытке вызова значения как функции, когда значение функцией не является. Например:
Var foo = undefined; foo();
Эта ошибка обычно возникает, если вы пытаетесь вызвать функцию для объекта, но опечатались в названии.
Var x = document.getElementByID(«foo»);
Несуществующие свойства объекта по-умолчанию имеют значение undefined , что приводит к этой ошибке.
Другие вариации, такие как “number is not a function” возникают при попытке вызвать число, как будто оно является функцией.
Как исправить ошибку: убедитесь в корректности имени функции. Для этой ошибки, номер строки обычно указывает в правильное место.
Uncaught ReferenceError: Invalid left-hand side in assignmentСвязанные ошибки: Uncaught exception: ReferenceError: Cannot assign to ‘functionCall()’, Uncaught exception: ReferenceError: Cannot assign to ‘this’
Вызвано попыткой присвоить значение тому, чему невозможно присвоить значение.
Наиболее частый пример этой ошибки — это условие в if:
If(doSomething() = «somevalue»)
В этом примере программист случайно использовал один знак равенства вместо двух. Выражение “left-hand side in assignment” относится к левой части знака равенства, а, как можно видеть в данном примере, левая часть содержит что-то, чему нельзя присвоить значение, что и приводит к ошибке.
Как исправить ошибку: убедитесь, что вы не пытаетесь присвоить значение результату функции или ключевому слову this .
Uncaught TypeError: Converting circular structure to JSONСвязанные ошибки: Uncaught exception: TypeError: JSON.stringify: Not an acyclic Object, TypeError: cyclic object value, Circular reference in value argument not supported
Var a = < >; var b = < a: a >; a.b = b; JSON.stringify(a);
Так как a и b в примере выше имеют ссылки друг на друга, результирующий объект не может быть приведен к JSON.
Как исправить ошибку: удалите циклические ссылки, как в примере выше, из всех объектов, которые вы хотите сконвертировать в JSON.
Unexpected token ;Связанные ошибки: Expected), missing) after argument list
Интерпретатор JavaScript что-то ожидал, но не обнаружил там этого. Обычно вызвано пропущенными фигурными, круглыми или квадратными скобками.
Токен в данной ошибке может быть разным — может быть написано “Unexpected token ]”, “Expected <” или что-то еще.
Как исправить ошибку: иногда номер строки не указывает на правильное местоположение, что затрудняет исправление ошибки.
Ошибка с < >() обычно вызвано несовпадающей парой. Проверьте, все ли ваши скобки имеют закрывающую пару. В этом случае, номер строки обычно указывает на что-то другое, а не на проблемный символ.
Unexpected / связано с регулярными выражениями. Номер строки для данного случая обычно правильный.
Unexpected; обычно вызвано символом; внутри литерала объекта или массива, или списка аргументов вызова функции. Номер строки обычно также будет верным для данного случая.
Uncaught SyntaxError: Unexpected token ILLEGALСвязанные ошибки: Unterminated String Literal, Invalid Line Terminator
В строковом литерале пропущена закрывающая кавычка.
Как исправить ошибку: убедитесь, что все строки имеют правильные закрывающие кавычки.
Uncaught TypeError: Cannot read property ‘foo’ of null, Uncaught TypeError: Cannot read property ‘foo’ of undefinedСвязанные ошибки: TypeError: someVal is null, Unable to get property ‘foo’ of undefined or null reference
Var someVal = null; console.log(someVal.foo);
Как исправить ошибку: обычно вызвано опечатками. Проверьте, все ли переменные, использованные рядом со строкой, указывающей на ошибку, правильно названы.
Uncaught TypeError: Cannot set property ‘foo’ of null, Uncaught TypeError: Cannot set property ‘foo’ of undefinedСвязанные ошибки: TypeError: someVal is undefined, Unable to set property ‘foo’ of undefined or null reference
Попытка записать null или undefined так, как будто это объект. Например:
Var someVal = null; someVal.foo = 1;
Как исправить ошибку: это тоже обычно вызвано ошибками. Проверьте имена переменных рядом со строкой, указывающей на ошибку.
Uncaught RangeError: Maximum call stack size exceededСвязанные ошибки: Uncaught exception: RangeError: Maximum recursion depth exceeded, too much recursion, Stack overflow
Обычно вызвано неправильно программной логикой, что приводит к бесконечному вызову рекурсивной функции.
Как исправить ошибку: проверьте рекурсивные функции на ошибки, которые могут вынудить их делать рекурсивные вызовы вечно.
Uncaught URIError: URI malformedСвязанные ошибки: URIError: malformed URI sequence
Вызвано некорректным вызовом decodeURIComponent .
Как исправить ошибку: убедитесь, что вызовы decodeURIComponent на строке ошибки получают корректные входные данные.
Эта проблема всегда связана с использованием XMLHttpRequest.
Как исправить ошибку: убедитесь в корректности запрашиваемого URL и в том, что он удовлетворяет same-origin policy . Хороший способ найти проблемный код — посмотреть на URL в сообщении ошибки и найти его в своём коде.
InvalidStateError: An attempt was made to use an object that is not, or is no longer, usableСвязанные ошибки: InvalidStateError, DOMException code 11
Означает то, что код вызвал функцию, которую нельзя было вызывать в текущем состоянии. Обычно связано c XMLHttpRequest при попытке вызвать на нём функции до его готовности.
Var xhr = new XMLHttpRequest(); xhr.setRequestHeader(«Some-Header», «val»);
В данном случае вы получите ошибку потому, что функция setRequestHeader может быть вызвана только после вызова xhr.open .
Как исправить ошибку: посмотрите на код в строке, указывающей на ошибку, и убедитесь, что он вызывается в правильный момент или добавляет нужные вызовы до этого (как с xhr.open).
Заключение JavaScript содержит в себе одни из самых бесполезных ошибок, которые я когда-либо видел, за исключением печально известной Expected T_PAAMAYIM_NEKUDOTAYIM в PHP. Большая ознакомленность с ошибками привносит больше ясности. Современные браузеры тоже помогают, так как больше не выдают абсолютно бесполезные ошибки, как это было раньше.
Какие самые непонятные ошибки вы встречали? Делитесь своими наблюдениями в комментариях.
P.S. Этот перевод можно улучшить, отправив PR .
- javascript
- errors
- google chrome
- firefox
- internet explorer
Другими словами, у вас может быть добавлена папка рабочего пространства в ваших инструментах chrome dev. Теперь, когда вы пытаетесь внести изменения в некоторые файлы, он делает запрос к файловой системе. Это работает отлично на некоторое время. Однако в некоторых сценариях вы удаляете сетевое сопоставление.
Затем, когда вы пытаетесь открыть эту веб-страницу в браузере, она может потребовать или не потребовать переназначения сетевых ресурсов и по-прежнему пытаться обновить файловую систему. И это когда вы получите эту ошибку. В вашем script нет ничего плохого.
Теперь единственным решением для этого может быть удаление кеша, а затем перезапуск системы. Если проблема все еще сохраняется, вы можете просто установить хром, и это должно быть исправлено.
Кроме того, иногда сетевое сопоставление может также вызвать несколько других проблем. Например, чтобы размер файла CSS превысил 75 МБ или выше. Поэтому вы должны принимать меры предосторожности при игре с сетевым сопоставлением.
Необязательно, если вы находитесь на Mac. или даже на Windows и имеете sh доступных команд.
sudo find / -type f -size +50000k -exec ls -lh <> \; | awk «< print $9 ": " $5 >«
Поразите это в своем Терминале, чтобы узнать индивидуальный файл виновника, который превышает 50 МБ. вы можете удалить их.
Примечание. Что делает вышеприведенная команда, он найдет все отдельные файлы размером более 50 МБ и напечатает их на вашем терминале один за другим.
Проблема такая, необходимо подключить скрипт с внешки:
Внешний скрипт формируется динамически и должен заполнить
Пример внешнего скрипта:
при этом вылезает ошибка document.getElementById(«v1») has no properties
Однако если применить такой код рабочий:
Проблема этого решения в том, что больше 1 раза window.onload не сработает, в то время как в HTML могут содержаться id v1, v2, v3 и т.д.
подскажите плиз решение.
Скрипты и стили грузятся в первую очередь до рендеринга страницы (а вдруг там document.write()). Соответственно и парсинг происходит до рендеринга. А, значит, ваш код не может обратиться к несуществующему элементу. Вот если бы вместо
document.getElementById(«v1″).innerHTML=»это динамический текст»;
тогда никаких проблем бы не было.
Поменяйте логику заполнения.
document.getElementById(«v1″).innerHTML=»это динамический текст»;
Дело в том что вызов скрипта, может осуществляться с любой странички и даже с других доменов.
Скрипты и стили грузятся в первую очередь до рендеринга страницы
Стили — да, а про скрипты не уверен. По крайней мере, я раньше с этим не встречался. Обычно, страница не парсится дальше того момента, где скрипт встретился. Как раз, из-за document.write злополучного, ибо там тэги незакрытые могут быть.
Давид Мзареулян[досье]
Видите ли мне придется этот обработчик вставлять в http://localhost/my/load/1
Таким образом если на той же странице вызывается скрипт http://localhost/my/load/2 , то получается 2 таких обработчика, вам не кажется странным?
И еще:
setGlobalOnLoad это функция, которую необходимо, как я понял вызвать! Вопрос как?
Алексей В. Иванов[досье] Представь, я в скрипте внешнем пишу document.write(). Страница прогрузилась, отрендерилась, а тут бац — наконец-то прогрузился этот скрипт (связь заело). Ну и что теперь делать браузеру?
Булат[досье] Я не понимаю, как Вы включаете скрипты на страницу.
Что мешает Вам сделать 1 общий скрипт и в нем прописать обработчики?
СУФД: Решение типовых проблем при работе с СУФД портал
Небольшой FAQ по решению типичных проблем при работе с порталом СУФД. Информация взята с сайта УФК по Чувашской республике и немного переработана, всвязи с этим некоторые данные (ip-адреса, имена узлов) могут отличатся. Вместо имен узлов можно использовать ip-адреса. Желательно использовать браузер Mozilla Firefox, ибо стабильнее.
1. Не можем войти в СУФД, вводим логин и пароль,но при нажатии кнопки «Вход» ничего не происходит
Очистка файлов cookie, кэша браузера.
Удалить запомненные пароли в КриптоПРО.
Панель управления -> КриптоПРО -> вкладка «Сервис» -> кнопка «Удалить запомненные пароли» -> поставить галочку в пункте «Пользователя» и нажать на кнопку «ОК».
Очистка кэша Java.
Панель управления -> Java -> вкладка «General» -> кнопка «Settings» -> в появившемся окне нажать на кнопку «Delete files» -> нажать на кнопку «ОК».
Желательно проделывать эти процедуры каждый день, перед началом работы с порталом. А также проверить, не сбилось ли у вас системное время (дата, часовой пояс).
2. Нет соединения с порталом, хотя континент работает
Пропинговать ip-адресс 10.15.200.66, и если ping идет, проверить, прописаны ли в файле hosts (C:\WINDOWS\system32\drivers\etc\hosts) строки:
10.15.200.66 s1500w03.ufk15.roskazna.local s1500w03
10.15.200.66 sufd.s1500w03.ufk15.roskazna.local sufd
если нет, то их необходимо прописать и перезагрузить компьютер.
3. СУФД не работает, сервер не отвечает.
Возможно, из-за перезагрузки сервера СУФД в УФК. Первичная рекомендация подождать 10-15 минут, если вы все равно не смогли войти по истечению этого времени, позвонить в отдел информационных систем.
4. Портал просит сменить пароль, что делать
На странице для смены пароля ввести свой старый пароль и дважды новый (составленный вами в соответствии с памяткой выданной вам в отделе режима секретности и безопасности информации).
5. Пользователь блокирован
Обратиться в отдел режима секретности и безопасности информации.
6. Континент не работает
Проверить, установлен ли личный сертификат на Континент-АП.
Панель управления -> Свойства обозревателя -> вкладка «Содержание» -> кнопка «Сертификаты».
Если нет, необходимо его установить, нажав правой кнопкой мыши на иконку Континент-АП в трее(правый нижний угол экрана), перейдя в пункт меню «Установить сертификат пользователя».
При отсутствии у вас данного сертификата обратиться в отдел режима секретности и безопасности информации.
7. Как установить личные сертификаты
Устанавливаются через КриптоПро.
Панель управления -> КриптоПро -> «Сервис» -> «Установить личный сертификат». По поводу сертификата обратиться в отдел режима секретности и безопасности информации.
8. Не подписывается документ
Проверить, установлены ли личные сертификаты пользователей в КриптоПро.
Панель управления -> Свойства обозревателя -> вкладка «Содержание» -> кнопка «Сертификаты».
Проверить, соответствует ли версия Java рекомендуемой(как войти см. п.1 и нажимаете кнопку «About», должна быть 6 update 17 или выше).
Разрешен ли запуск Java, включены ли плагины Java( Для Internet Explorer: заходите во вкладку «Сервис»-> «Надстройки»-> «Панели инструментов и расширения», в появившемся меню все, что связано с Java, должно быть в состоянии «включено».
Если Mozilla Firefox, то во вкладке «Инструменты»-> пункт «Дополнения»-> во вкладках «Расширения» и «Плагины» все, что связано Java, также должно быть включено).
Отключено ли блокирование всплывающих окон(Для Internet Explorer: вкладка «Сервис»-> пункт «Блокирование всплывающих окон»-> в раскрывшемся меню первый пункт должен быть «Включить блокирование всплывающих окон», если же в первом пункте «Отключить блокирование всплывающих окон», то его необходимо кликнуть мышкой.
В Mozilla Firefox вкладка «Инструменты» -> «Настройки» -> вкладка «Содержимое», в пункте «Блокировать всплывающие окна» убираете галочку и жмете кнопку «ОК» ).
Сброс на стандартные настройки Java. В панели управления открываете Java(как войти см. п.1), кнопка «Settings», затем «Restore defaults» и «ОК».
Проверить, провели ли вы «Документарный контроль», соблюдается ли у вас очередность подписей.
Тот ли ключевой носитель у вас стоит.
Под тем ли пользователем вы вошли.
9. Проблемы c Java
Просмотреть также как в пункте 8: разрешено ли исполнение java, отключено ли блокирование всплывающих окон в браузере, корректная версия ли у вас Java стоит, включены ли плагины Java.
10. Документ не отправляется, пишет «Документ имеет недостаточное количество подписей, в соответствии с настроенными правилами утверждения»
Документ подписан либо одной подписью вместо 2-х, либо одна из подписей некорректная. В случае недостаточного количества подписей – подписать недостающей, в случае ошибочной – переподписать.
11. Во время подписания документа «вылетает» ошибка «URL is NULL» либо любая другая, некорректно завершающая подписание
Заново установить личный сертификат. См. пункт 7.
12. Во время подписания «вылетает» окно КриптоПро, в котором написано, что указанный набор ключей не существует
Проверить, соответствует ли внешний носитель с ключом ЭЦП пользователю, работающему в СУФД. Если соответствует, заново установить личный сертификат пользователя и привязать его к ключевому носителю. См. пункт 7.
13. Не могу подписать вложения
Подписывать вложения нет необходимости, так как сам документ утверждается.
14. Как заполнять документ
В этом случае обращайтесь к вашему куратору функционального отдела.
15. Не сохраняется документ
Типичная ошибка связана с некорректным заполнением документа, документ не сохраняется из-за критических ошибок. Необходимо данные ошибки исправить, после чего документ можно будет сохранить.
16. Не импортируется документ в СУФД
Проверить в обязательном порядке форматы экспорта в ППО, откуда производится импорт документа. Требования к форматам файлов приведены на сайте Федерального казначейства.
17. Не виден документ в скроллере общего списка, не меняется статус документа после проведения каких-либо операций над ним
Необходимо обновить список документов, нажав на кнопку «Обновить список документов» в панели инструментов СУФД. Чтобы увидеть созданный документ, необходимо также обновить список документов, либо пролистать скроллер на следующую страницу просмотра.
18. Не могу найти документ
Проверить, в том ли разделе вы ищете документы. Удалить фильтры, обновить список документов, посмотреть, под тем ли вы полномочием находитесь, привязано ли к вашему логину данное полномочие. Уточнить у куратора функционального отдела, отправлен ли документ к вам.
19. Нет возможности просмотреть вложения в документах или сам документ не открывается.
Если у вас Internet Explorer 7,8,9 то нужно добавить в доверенные узлы два узла СУФД: s1500w03.ufk15.roskazna.local, sufd.s1500w03.ufk15.roskazna.local;
и сбросить настройки безопасности для этих узлов на низкий(Для этого входите во вкладку «Сервис» -> «Свойства обозревателя» -> вкладка «Безопасность» -> пункт «Надежные узлы» -> кнопка «Узлы», в появившемся окне добавляете два узла:
и жмете кнопку «Закрыть».
Чтобы сбросить уровень безопасности для надежных узлов на низкий, в пункте «Надежные узлы» жмете на кнопку «Другой»-> в выпадающем списке выбираете «Низкий» ->нажимаете кнопку «Сбросить»-> в окне предупреждения жмете кнопку «Да» и нажимаете «ОК», закрываете «Свойства обозревателя» ).
Если у вас Mozilla Firefoх, то во вкладке «Инструменты» -> «Настройки» -> «Содержимое», в пункте «Блокировать всплывающие окна» убираете галочку и жмете кнопку «ОК»
20. Не распечатываюся вложения
Заходите в документ, в котором имеются вложения, вкладка «Системные атрибуты», внизу есть поле «вложения», ставите галочку в поле «GUID» и жмете на кнопку «Напечатать».
21. Документ не проходит документарный контроль
При прохождении документарного контроля существуют 2 группы ошибок:
некритичные (желтые значки в списке ошибок) и критичные (красные значки в списке ошибок). Устранение критичных ошибок является обязательным условием для прохождения документарного контроля документа.
22. После проведения документарного контроля кнопка подписи неактивна.
После проведения документарного контроля Бизнес-статус должен стать «Введено», а Статус передачи «Введен».
1.Если Статус передачи «Отсутствует», то документарный контроль прошел некорректно. Необходимо такие документы откатить до статуса «Черновик» при помощи кнопки «Откат статуса передачи» и заново провести документарный контроль. После этого кнопка подписи должна стать активной.
2.Возможен второй вариант, если кнопка подписи неактивна, даже если документарный контроль прошел корректно. В таком случае нужно зайти в документ на редактирование и провести проверку документа при помощи кнопки «Проверить документ».После этого выйти из документа, обновить список документов, кнопка подписи должна стать активной.
23. Как выделить все документы
Выделяете один документ из списка и нажимаете Ctrl+A. После чего можете провести документарный контроль и подписание документов всей выделенной группы.
Если вам необходимо выделить не все, а несколько документов, зажимаете Ctrl и выделяете при помощи мыши те записи, которые вам нужны, при условии, что у вас записи расположены не по порядку.
Если необходимые вам записи распологаются одна за другой, зажимаете Shift и при помощи мыши выделяете документы.
24. Документ не отправляется, пишет «Документ имеет недостаточное количество подписей, в соответствии с настроенными правилами утверждения»
Документ подписан либо одной подписью вместо 2-х, либо одна из подписей некорректная. В случае недостаточного количества подписей – подписать недостающей, в случае ошибочной – переподписать.
25. Не меняется статус документа более получаса
Удостоверится, что документ отправлен, созвониться с куратором функционального отдела.
26. Нет возможности подготовить документ без связи с УФК
Данная проблема присуща самой идее использования портала СУФД, так как используется интернет подключение к удаленным ресурсам казначейства. Документ рекомендуется предварительно готовить в программах клиента, предназначенных для ведения бухгалтерского учета (1:С, парус и др.), с последующим импортом в портал.
27. Какое ПО нужно использовать для работы в СУФД на ОС Windows 7
Желательно использовать браузер Mozilla Firefoх последней версии, Java 6.17, если не работает с данной версией, то версию более новую. Проверить, соблюдены ли рекомендации данные в пункте 8. Континент-АП версии 3.5, КриптоПро версии 3.6 (по поводу данных ПО обращаться в отдел режима секретности и безопасности информации).
28. Если постоянно выбрасывает при вводе логина и пароля на страницу авторизации на ОС Windows 7
этот сайт не может обеспечить безопасное соединение
При входе в СУФД, через Яндекс браузер — стали наблюдать такую вот картину.
Этот сайт не может обеспечить безопасное соединение.
Chromium GOST был более лаконичен, пестрив ошибкой:
Не удается получить доступ к сайту суфд
Теперь по порядку на что мы обращали внимание в решении проблемы.
- В нашем случае авторизация была без Континента АП. Через ЭЦП.
- Сертификат был действительным, (открытые и закрытые ключи).
- Сертификатом уже подписывали, то есть он уже работал в СУФД и был привязан к учетке.
- Пробовали подключиться через различные браузеры (видно из скриншотов).
- Были заново переустановлены все корневые сертификаты казначейства
В нашем случае решение оказалось не совсем логичным. Если бы помогло что то из вышеперечисленного (смена браузера, установка корневого) — это был бы легкий путь. Нам пришлось удалить крипто про 4 версии, и поставить более свежую версию. Об этом стала наводить мысль, что при авторизации на сайт ни на 1 браузере не всплывало окошко с выбором ЭЦП.
Очистка истории / кэша / куков
Обратите внимание, что пароль не должен совпадать с предыдущими 6 паролями, которые вы использовали на портале.
Проблемы с документами
В левом верхнем углу списка документов есть кнопка с изображением архива.
Проверьте форматы экспорта в ППО, из которого производится импорт документа. Требования к форматам файлов приведены на сайте Федерального казначейства.
Проблемы с подписью
Это означает что ваша Мозилла отказывается работать с Java.
Убедитесь, что ваш браузер не обновился. Версия должна быть ниже 52.0. Если это не так, есть несколько вариантов:
— откатить версию Firefox (удалите текущую версию, установите любую другую ниже 52.0 и отключите автоматические обновления)
— использовать браузер CryptoPro Fox
— отказаться от использования Java в пользу КриптоПро ЭЦП browser plug-in (обратите внимание, что при работе в новой Firefox может потребоваться установить дополнительное расширение, информация представлена по той же ссылке)
Если версия браузера соответствует, убедитесь что в нем активна Java. Если это не так, переустановите Java 32bit.
Документ подписан либо одной подписью вместо двух, либо одна из подписей некорректная.
В случае недостаточного количества подписей – подписать недостающей, в случае ошибочной – переподписать.