-
После установки система не запускается. В логах:
2019-11-01 09:12:10,425 ERROR [com.haulmont.thesis.preview.office.JodOpenOfficeIntegration] [app-core] [server] Could not create the jod office integration: officeHome must exist and be a directory 2019-11-01 09:12:13,553 INFO [com.hazelcast.instance.AddressPicker] [LOCAL] [dev] [3.10.4] Prefer IPv4 stack is true.
Решение
- Проверить, корректно ли указан путь до установленного пакета OpenOffice/LibreOffice.
- Возможно, занят порт 5701, на котором работает Hazelcast. Необходимо переопределить порт, внеся в файл
tomcat\conf\app-core\local.app.properties
параметр:
thesis.hazelcast.port={port}
, где
{port}
- любой свободный порт.
Если параметр отсутствует, то добавить и изменить порт.
3. После сохранения файла настроек перезапустите систему. -
В логах ошибка GetAllowCardTypesEndpoint:
java.lang.IllegalArgumentException 2019-06-24 08:18:10,798 ERROR[com.haulmont.thesis.portal.reminder.ws.LoadListEntitiesEndpoint] LoadListEntitiesEndpoint: 2019-06-24 08:18:10,830 ERROR[com.haulmont.thesis.portal.reminder.ws.GetAllowCardTypesEndpoint] GetAllowCardTypesEndpoint: java.lang.IllegalArgumentException: at com.haulmont.cuba.core.global.UuidProvider.fromString(UuidProvider.java:58) at com.haulmont.thesis.portal.reminder.ws.Authentication.authenticate(Authentication.java:32)...
Решение
Данная ошибка не критична для работы системы. Проблема вызвана устаревшими программами ТЕЗИС:Помощник, установленными на машинах пользователей. Как только все будут обновлены, ошибка из лога уйдет. Проблема связана с обменом запросами между новой версией системы и старым ТЕЗИС:Помощник.
-
В логах ошибка Unable to handle NoUserSessionException:
2019-09-24 10:29:40,111 ERROR[com.haulmont.cuba.web.exception.NoUserSessionHandler] [app] [STREAM\sherstneva] Unable to handle NoUserSessionException com.haulmont.cuba.security.global.NoUserSessionException: User session not found: b90c44da-896a-bd08-42ff-db6cfcb82fa2 at com.haulmont.cuba.core.sys.ServiceInterceptor.getUserSession(ServiceInterceptor.java:85) at com.haulmont.cuba.core.sys.ServiceInterceptor.aroundInvoke(ServiceInterceptor.java:60) at sun.reflect.GeneratedMethodAccessor190.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498)
Решение
Данная ошибка исправляется тремя настройками:
- В папке
/tomcat/conf/app
указать параметрcuba.httpSessionExpirationTimeoutSec=1800
, где 1800 - значение длительности неактивной сессии. - Проверить и, в случае отличия, поменять в
/tomcat/webapps/app/WEB-INF/web.xml
значениеcom.haulmont.thesis.web.sys.ThesisWebHttpFilter
:<filter> <filter-name>CubaHttpFilter</filter-name> <filter-class>com.haulmont.thesis.web.sys.ThesisWebHttpFilter</filter-class> <async-supported>true</async-supported> </filter>
- Изменить protocol в файле
/tomcat/conf/server.xml
наorg.apache.coyote.http11.Http11NioProtocol
:<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" connectionTimeout="20000" redirectPort="8443"/>
- В папке
-
Ошибка при запуске системы. В логах:
ERROR [com.haulmont.thesis.core.sys.ThesisAppContextLoader] [app-core] [server] Error initializing application java.lang.RuntimeException: java.sql.SQLException: Cannot create PoolableConnectionFactory (Cannot open database "tezis" requested by the login. The login failed.)
Решение
Система не может подключиться к БД. Необходимо проверить корректность параметров подключений к БД, указанных в файле:
tomcat\webapps\app-core\META-INF\context.xml
-
При работе с системой у пользователей возникает ошибка:
java.net.SocketException: Too many open files at java.net.Socket.createImpl(Socket.java:460) at java.net.Socket.<init>(Socket.java:431) at java.net.Socket.<init>(Socket.java:211) at org.postgresql.core.PGStream.<init>(PGStream.java:62) …
Решение
- В файл
tomcat\bin\setenv.sh
необходимо добавить параметрulimit -n 30000
. - Для применения настройки необходимо перезапустить ТЕЗИС.
С точки зрения ОС Apache Tomcat разрешено открывать не больше 4096 файлов. Под файлами также воспринимаются соединения, когда превышается этот лимит — появляется ошибка. Заведомо нет возможности понять количество, которое необходимо обозначить для Apache Tomcat, так как, например, в полнотекстовом поиске одновременно может использоваться достаточно большое количество файлов, при оптимизации индекса.
- В файл
-
Ошибка - Unable to save wiring: 403
Решение
Данная ошибка возникает при потере соединения с системой, по аналогии с отключением неактивной сессии. В настройках “Администрирование” - “Системные параметры” - “Параметры” указан период неактивности, после которого система осуществляет принудительный выход пользователя из системы. Чтобы избежать данной ошибки, следует увеличить время неактивности сессии, как мы описывали ранее в п.3.1. При возникновении ошибки внесенные изменения не сохраняются.
-
Ошибка - OutOfMemoryError: GC overhead limit exceeded
Решение
Ошибка GC overhead limit exceeded возникает в случае нехватки оперативной памяти, выделенной на процесс. Рекомендуется увеличить объем памяти, выделяемой для работы Apache Tomcat. Сделать это можно следующим способом:
-
ОС Linux:
Открыть файл/tomcat/bin/setenv.sh
. Отредактировать параметрXmx1024m
, цифра означает количество памяти, выделяемой на сервере для работы приложения. -
ОС Windows:
Запустить файлtomcat\bin\tomcat8w.exe
от имени администратора, на вкладке “Java” в полеMaximum memory pool
указано, сколько ОЗУ выделено для работы Apache Tomcat.Увеличьте данную цифру настолько, насколько это возможно с учетом характеристик сервера и других приложений. При редактировании параметра необходимо учесть, что значение указывается в МБайтах.
После изменения данного параметра в соответствующем файле, в зависимости от используемой ОС, потребуется перезапуск службы tomcat.
-