Как изменить системную переменную в Geoserver - PullRequest
0 голосов
/ 07 октября 2019

Я в Linux. Я использую postgresql - geoserver - openlayers. Я хочу отобразить шейп-файл с GeoServer. Я храню его в Postgresql и импортирую таблицу на Geoserver. Размер шейп-файла составляет 2,2 ГБ. Когда я хочу отобразить свой шейп-файл с помощью средства просмотра Openlayers (на Geoserver), у меня появляется белый экран, и эта ошибка - журналы:

ОШИБКА [geoserver.ows] org.geoserver.platform.ServiceException: Процесс рендеринга завершился неудачно .... Причина: java.lang.RuntimeException: org.postgresql.util.PSQLException: ОШИБКА: не удалось записать во временный файл хранилища кортежей: на устройстве не осталось места, где: оператор SQL "оператор st_force_2d" 2

Я видел здесь: https://docs.geoserver.org/stable/en/user/services/wfs/outputformats.html, это ограничение размера 2 ГБ для шейп-файла, но мы можем изменить этот предел, изменив системные переменные GS_SHP_MAX_SIZE. Как я могу это сделать ? Я проверил в интернете, но найти решение невозможно.

1 Ответ

1 голос
/ 08 октября 2019

В ссылке, которую вы упомянули, сказано:

можно изменить эти ограничения, установив для системных переменных GS_SBP_MAX_SIZE и GS_DBF_MAX_SIZE другое значение.

Так что ядумаю, что это похоже на GEOSERVER_DATA_DIR config.

Для установки двоичных файлов : Вы должны изменить системные переменные ОС. Я не уверен, но команда выглядит примерно так:

$ export GS_SHP_MAX_SIZE=Limit of .shp size in bytes
$ export GS_SHP_MAX_SIZE=3000000000

Если это не сработало, найдите системный var в вашем дистрибутиве Linux.

Для вебаустановка архива : Вам следует изменить конфигурацию веб-сервера или GeoServer. Есть 2 способа сделать это:

  1. Параметр контекста: Найти и отредактировать web.xml в папке WEB-INF. затем добавьте этот параметр контекста в корневой элемент (тег <web-app>)
<context-param>
    <param-name>GS_SHP_MAX_SIZE</param-name>
    <param-value>Limit of .shp size in bytes</param-value>
</context-param>
Системное свойство Java: оно очень похоже на установку двоичных файлов, за исключением того, что вы должны добавить системную переменную для веб-сервера. Если вы используете tomcat, добавьте это к системным переменным.
$ export CATALINA_OPTS="-GS_SHP_MAX_SIZE=Limit of .shp size in bytes"
$ export CATALINA_OPTS="-GS_SHP_MAX_SIZE=3000000000"

Будьте осторожны при изменении системного свойства java! это повлияет на весь Apache tomcat и может вызвать проблемы в других установленных веб-приложениях.

...