.. _application_properties: Application Properties ---------------------- While many configuration and setup options are available through the Web Administration application :menuselection:`Settings > Global` page, more fundamental (and security minded) changes to how the application operates are made using "Application Properties" defined by: * Java System Properties * Web Application context parameters * System Environmental Variable As part of the operating environment GeoServer application properties, unlike settings, cannot be changed at runtime. GeoServer Property Reference ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. list-table:: :width: 100% :widths: 70 10 10 10 * - Application Property - System Property - Context Param - Env Variable * - GEOSERVER_DATA_DIR :doc:`/datadirectory/setting` - x - x - x * - GEOSERVER_MODULE_SYSTEM_ENVIRONMENT_STATUS_ENABLED :ref:`module_status_security_environment_vars` - - - x * - GEOSERVER_MODULE_SYSTEM_PROPERTY_STATUS_ENABLED :ref:`module_status_security_environment_vars` - - - x * - GEOWEBCACHE_CACHE_DIR :doc:`/geowebcache/config` - x - x - x * - GEOSERVER_NODE_OPTS :doc:`/production/identify` - x - x - x * - serviceStrategy :doc:`/production/config`, default PARTIAL-BUFFER2 - x - x - x * - GEOSERVER_CONSOLE_DISABLED :doc:`/production/config` - x - - * - GWC_DISKQUOTA_DISABLED - x - x - x * - geoserver.login.autocomplete :doc:`/production/config`, default on. - x - - x * - CONFIGURATION_TRYLOCK_TIMEOUT Delay for REST API and Web Administration configuration changes (default 30000 MS) - x - x - x * - COMPARISON_TOLERANCE Referencing tolerance when matching PRJ to EPSG code (default 0.00000001) - x - x - x * - GEOSERVER_CSRF_DISABLED :doc:`/security/webadmin/csrf` - x - x - x * - GEOSERVER_CSRF_WHITELIST :doc:`/security/webadmin/csrf` - x - x - x * - org.geoserver.catalog.loadingThreads Number of threads used to load catalogue (Default 4). - x - x - x * - CAPABILITIES_CACHE_CONTROL_ENABLED Use false to disable, defaults to true. - x - x - x * - GEOSERVER_FILEBROWSER_HIDEFS When set to true only GEOSERVER_DATA_DIR available to browse. - x - x - x * - GEOSERVER_XSTREAM_WHITELIST Used to restrict catalogue persistence. - x - x - x * - geoserver.xframe.shouldSetPolicy :doc:`/production/config`, default true. - x - x - x * - geoserver.xframe.policy :doc:`/production/config`, default SAMEORIGIN - x - x - x * - ows10.exception.xml.responsetype :doc:`/production/config` - x - - * - ows11.exception.xml.responsetype :doc:`/production/config` - x - - * - ENABLE_MAP_WRAPPING Default if setting unavailable (true) - x - x - x * - ENABLE_ADVANCED_PROJECTION Default if setting unavailable (true) - x - x - x * - OPTIMIZE_LINE_WIDTH :doc:`/services/wms/global`, default true (can be set false.) - x - x - x * - MAX_FILTER_RULES :doc:`/services/wms/global`, default 20 - x - x - x * - USE_GLOBAL_RENDERING_POOL Default is true, can be set false - x - x - x * - org.geoserver.render.raster.direct.disable Used to bypass direct raster rendering - x - - * - wms.raster.disableGutter Disable gutter used to request larger area when reprojecting raster content. - x - - * - wms.raster.enableRasterChainDebug Trouble shoot raster rendering - x - - * - GEOSERVER_GLOBAL_LAYER_GROUP_INHERIT Should workspaces include layer groups from the global workspace, default true. - x - x - x * - PROXY_BASE_URL Supply PROXY_BASE_URL, overriding settings. - x - x - x * - org.geoserver.service.disabled Default comma separated list of disabled services. - x - x - x * - GEOSERVER_DEFAULT_CACHE_PROVIDER Request custom cache implementation for catalog. - x - x - x * - org.geoserver.wfs.xml.WFSURIHandler.disabled Flag to disable internal handling of references to GeoServer. Force reflective references such as DescribeFeatureType to be handled as separate request. - x - - * - org.geoserver.wfs.xml.WFSURIHandler.additionalHostnames default localhost. - x - - * - force200 Use true to force the http return code to always be 200. Required for WCS2.0, breaks OWS2 and WCS2 standards. - x - - * - GS_SHAPEFILE_CHARSET Supply default for shapefile datastore - x - x - x * - GEOSERVER_GEOJSON_LEGACY_CRS true to enable legacy GeoJSON output. - x - x - x * - ENABLE_JSONP :doc:`/services/wms/global` - x - x - x * - XML_LOOKAHEAD Number of bytes read to determine XML POST request (default 8192). - x - x - x * - org.geoserver.wfs.getfeature.cachelimit :doc:`/production/config`, default 0 (disabled) - x - - * - org.geoserver.wfs.xml.entityExpansionLimit Default 100. - x - x - x * - org.geoserver.htmlTemplates.staticMemberAccess :doc:`/tutorials/GetFeatureInfo/html` - x - x - x * - ENABLE_OL3 Default true. - x - x - x * - GEOSERVER_LOG_LOCATION :doc:`/configuration/logging` - x - x - x * - RELINQUISH_LOG4J_CONTROL :doc:`/configuration/logging` - x - x - x * - GT2_LOGGING_REDIRECTION :doc:`/configuration/logging` - x - x - x * - wicket.configuration Wicket RuntimeConfigurationType (DEPLOYMENT or DEVELOPMENT) - x - x - x Setting Application property ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Application properties are determined using the first value obtained from: Java System Properties, Web Application context parameters, or System Environmental Variable. Using ``GEOSERVER_DATA_DIR`` as an example: 1. Java System Properties: Supplied to the java virtual machine as part of your application server configuration. .. code-block:: bash -DGEOSERVER_DATA_DIR=/var/lib/geoserver_data * For Tomcat on Linux edit :file:`setenv.sh` to append additional java system properties: .. code-block:: bash # Append system properties CATALINA_OPTS="${CATALINA_OPTS} -DGEOSERVER_DATA_DIR=/var/lib/geoserver_data" * For Tomcat on Windows use :command:`Apache Tomcat Properties` application, navigating to the :guilabel:`Java` tab to edit :guilabel:`Java Options`: .. code-block:: text -DGEOSERVER_DATA_DIR=C:\ProgramData\GeoServer\data While not commonly used for GEOSERVER_DATA_DIR, this approach is a popular way to enable/disable optional GeoServer functionality. 2. Web Application context parameter: * Tomcat: Use your application server to configure the GeoServer web application via :file:`conf/Catalina/localhost/geoserver.xml` file: .. code-block:: xml .. note:: Tomcat management of application properties as using ``override="false"`` is not the most straight forward to understand. This setting prevents parameter defined in :file:`WEB-INF/web.xml` (from the :file:`geoserver.war` ) to override the provided file location. Other application servers provide a user interface to manage web application properties and are more intuitive. * Not recommended: Hand editing the `webapps/geoserver/WEB-INF/web.xml` file: .. code-block:: xml GEOSERVER_DATA_DIR /var/lib/geoserver_data .. note:: This file is part of the GeoServer application and will be replaced when updating the application. As a result this approach is error prone making updates more difficult and is not recommended. 3. System environmental variable: .. code-block:: bash export GEOSERVER_DATA_DIR=/var/lib/geoserver_data This approach can be useful for GEOSERVER_DATA_DIR when running GeoServer in a docker container, traditionally managed with environmental variables. Additional system properties ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Cascading WFS and WMS services where GeoServer acts as a client for another web service make use of the Apache Http Components HTTP client library. The HTTP client library respects the following java system properties:: ssl.TrustManagerFactory.algorithm javax.net.ssl.trustStoreType javax.net.ssl.trustStore javax.net.ssl.trustStoreProvider javax.net.ssl.trustStorePassword ssl.KeyManagerFactory.algorithm javax.net.ssl.keyStoreType javax.net.ssl.keyStore javax.net.ssl.keyStoreProvider javax.net.ssl.keyStorePassword https.protocols https.cipherSuites http.proxyHost http.proxyPort https.proxyHost https.proxyPort http.nonProxyHosts http.keepAlive http.maxConnections http.agent Reference: * `HttpClientBuilder `__