如何在Geoserver中更改系统变量

问题描述 投票:0回答:1

我在Linux上。我正在使用postgresql-geoserver-openlayers。我想用GeoServer显示shapefile。我将其存储在Postgresql中,并在Geoserver上导入表。 shapefile的大小为2.2GB。当我想用Openlayers查看器(在Geoserver上)显示shapefile时,我有一个白色的屏幕,并且此错误是日志:

错误[geoserver.ows] org.geoserver.platform.ServiceException:呈现过程失败...。由以下原因引起:java.lang.RuntimeException:org.postgresql.util.PSQLException:错误:无法写入tuplestore临时文件:设备上没有剩余空间,其中:SQL函数“ st_force_2d”语句2

我在这里看到:https://docs.geoserver.org/stable/en/user/services/wfs/outputformats.html,这是shapefile的限制大小为2GB,但是我们可以通过更改系统变量GS_SHP_MAX_SIZE来修改此限制。我怎样才能做到这一点 ?我检查了Internet,但找不到解决方法。

environment-variables size shapefile geoserver
1个回答
0
投票

在您提到的链接中说:

可以通过将GS_SHP_MAX_SIZE和GS_DBF_MAX_SIZE系统变量设置为其他值来修改这些限制。

所以我认为它类似于GEOSERVER_DATA_DIR配置。

对于二进制文件安装:您应该更改OS系统变量。我不确定,但是命令是这样的:

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

如果不起作用,请在Linux发行版中搜索更改系统变量。>

用于Web存档安装

:您应该更改Web服务器或GeoServer的配置。有2种方法:
  1. 上下文参数:在web.xml文件夹中查找和编辑WEB-INF。然后在根元素(<web-app>标签)处添加此上下文参数
  2. <context-param>
        <param-name>GS_SHP_MAX_SIZE</param-name>
        <param-value>Limit of .shp size in bytes</param-value>
    </context-param>
    
  1. Java系统属性:它与二进制文件安装非常相似,只不过您应该为Web服务器添加系统变量。如果您使用的是tomcat,请将其添加到系统变量中。
  2. CATALINA_OPTS="-GS_SHP_MAX_SIZE=Limit of .shp size in bytes"
    `enter code here`CATALINA_OPTS="-GS_SHP_MAX_SIZE=3000000000"
    
© www.soinside.com 2019 - 2024. All rights reserved.