Features
GeoServer is a high-performance web service for the publication of spatial information.
GeoServer Enterprise is a commercial distribution of GeoServer offering long-term-support and extended support options for GeoCat customers. GeoCat is a proudly open source company working as a member of the GeoServer community.
If you have used earlier versions of GeoServer Enterprise review the current release notes </welcome/index> for an overview of significant changes in this version.
User Experience
GeoServer provides a website for visitors to discover available web services and preview the provided content.
Additional demos are available offering assistance in constructing requests. Troubleshooting tools are included to list coordinate reference systems, and practice coordinate transformations.
GeoServer Welcome page
The welcome page has been updated to allow visitors to explore the web services available.
The web services listed will dynamically change as visitors navigate into individual workspaces and layers which services are enabled. Once logged in users are shown any additional services they have permission to use.
GeoServer Enterprise Theme
GeoServer Enterprise includes a visual refresh with a fresh clean appearance.

GeoServer Enterprise Theme
GeoCat Map Theme
To coincide the the update of the GeoCat Website <https://www.geocat.net/map/> a new theme is available. This theme will become the default and is presently available for early access on request.

GeoCat Map Theme (Preview)
GeoCat Map Live Theme
The GeoCat Live theme has been updated to reflect the new GeoCat Website <https://www.geocat.net/map/>. available.

GeoCat Live Theme (Preview)
Demo requests
The Demo request page can be used to try out web services, offering a list of example queries, and integration with builds that can help formulate requests for tricky to use protocols like Web Coverage Service and Web Processing Serivce.

Demo request
The request can be Show Result directly on the page, showing the response headers in addition to the resonse. As so many protocols are xml based there is an option for pretty printing included.

Demo request result.
Language
A language selector is available with translations available for the administration console:

Language Selector
Reference:
Web Services
GeoServer Enterprise publishes your information using a selection of open standards and industry standards.
GeoServer Enterprise:
-
Shares information visually as cartographic data products generated from geospatial data and styling.
-
Publish vector information as geographic features for use in Desktop GIS, Web Mapping and Processing and Analysis.
-
Access raster information as a geographic coverage, generating and data products for analysis, processing and visualization.
-
Integrated GeoWebCache supports a range of tileset based protocols for mobile and web mapping applications.
GeoServer extensions:
-
Publishing of geospatial processes, algorithms, and calculations
Catalog Services for the Web (CSW)
Retrieving records describing data products published by GeoServer.
Internationalization
Services support internationalization for contacting information, and mapping services.
Internationalization of title and abstract is supported for all layers, including layer groups and WMS Root Layer.
To request a web service with French, and then English content append AcceptLanguages=fr|en
to the service GetCapabilities URL.
Layer Service Settings
Often requested functionality, define which services are enabled on a layer-by layer basis directly from the layer editor. Previously this functionality was only available from the data security page.
See Layer Service Settings.

EPSG database v 9.6
The EPSG database has been updated to version 9.6, including roughly a thousand more codes than the previous version available in GeoServer. The code has also been updated to ensure the NTv2 grid shift files between GDA94 and GDA2020 work properly. Sponsored by GeoScience Australia.
Web Map Service
WMS Nearest Match for time dimension
WMS time dimension can be configured for nearest match. This setting renders the nearest time to the one requested (either explicitly, or implicitly via the default time value).
In case of mismatch the actual time used will be returned along with the response as a HTTP header.
Functionality can be configured with a maximum tolerance, beyond that the server will throw a service exception.
Dynamic densification on reprojection
GeoServer has always reprojected data “point by pointâ€, this typically caused long lines represented by just two points to be turn into straight lines, instead of curves, as they were supposed to.
There is a new “advanced projection handling†option in WMS enabling on the fly densification of data, the rendering engine computes how much deformation the projection applies in the area being rendered, and densifies the long lines before reprojection, resulting in eye pleasing curves in output. See a “before and after†comparison.

Reprojection, original point by point versus densified mode
Web Feature Service
Complex GeoJSON output changes
Improved GeoServer WFS generation of GeoJSON out of complex features data sources:
The property/element alternation typical of GML is preserved, causing deeply nested data structures.
To avoid writing container.x.x access to reach the x value, the output now skips one of the containers and exposes a direct container.x structure.
XML attributes are now turned into plain JSON properties, and prefixed with a @
Feature and data types are now preserved in translations, as a @feaureType and @dataType attributes
Full nested features are encoded as GeoJSON again, keeping their identifiers
This work supports the use of app-schema compldex feature output. Sponsored by French geological survey – BRGM, and the French environmental information systems research center – INSIDE.
Web Map Tile Service
Tile protocols are provided by an emended GeoWebCache component.
Azure GeoWebCache blobstore
Tiles can now be stored in Azure blob containers, increasing GeoWebCache compatibility with cloud environments.
Note Azure does not provide, a mass blob delete API. On truncate GeoWebCache is required to individually remove tiles making a DELETE request for each one.
Web Processing Service
WPS Execution Management
WPS GetExecutions vendor operation to list the running processes:
Users can review all their running processes
Administrators can see all processes
WPS Dismiss vendor operation to cancel the execution of one of the listed processes.
See WPS Operations.

Process status
MapML Service
MapML extension
The MaoML extension tracks the emergency W3C standard to define an html element for web mapping. The extension provide additional publishing options and includes a LayerPreview.

Layer Publishing MapML settings
MapML can support a dimension, for layers with a time or elevation attribute. MapML supports tiling, when using the one of the included GridSets for WGS84, OSMTILE.
Reference
Cartography
GeoServer Enterprise:
Style Layer Descriptor (SLD)
Symbology Encoding (SE)
GeoServer extension:
Chart symbolizer
MapBox Styling
YSLD styling
GeoServer extensions (premium)
CSS Styling
Cross layer filtering
SLD REST API service
Service offering dynamic data driven generation of SLD styles.
Internationalization
Map labels generation can be internationalized with the addition of a langage
function. Support has also been added to support the internationalized of rules (as seen in legend generation).
Reference:
Fullscreen style editor
The GeoServer style editor now includes a fullscreen side-by-side editing mode to easily preview appearance while editing a style.
To toggle fullscreen mode click the fullscreen button at the top-right of the style editor.

Full screen style editor
Style Editor helpers
Style editor usability improved with:
RasterSymbolizer dynamic channel selection
A GeoServer extension to SLD supporting the use of expressions for SourceChannelName. This allows the dynamic channel selection, important for working with multispectral or hyperspectral data.
This approach avoids generating different styles for each false color combination.
Map algebra
The rendering engine now provides support for an efficient map algebra package knows as Jiffle.
Jiffle was produced by Michael Bedwards, and has now been upgraded to support newer Java releases, and integrated in jai-ext. Now available GeoTools gt-process-raster module the functionality can be used from either WPS or as a rendering transformation.
SLD Service Extension
The optional SLD Service extension is available for:
The generation of classified maps of vector data based on criteria such as equal interval, quantiles and unique values.
Vector data filtering based on standard deviation, equal area classification
Raster processing with the generation of classified maps and data filtering.
Raster processing makes use of automatic sub-sampling when the source image is too large.
The SLD REST Service is used to generate thematic styles based on attribute data:
curl -v -u admin:geoserver -XGET
http://localhost:8080/geoserver/rest/sldservice/states/classify.xml
?attribute=PERSONS
&ramp=CUSTOM
&method=quantile
&intervals=3
&startColor=0xFF0000
&endColor=0x0000FF
&open=true
See SLD REST Service.
Control legend generation with mapOnly and legendOnly
Choose which rules are used for legend generation using the mapOnly and legendOnly vendor options (to mark how rules are used).
Reference:
Configuration
GeoServer enterprise:
Web Administration
GeoCat visual theme
REST Configuration
Web-resource tool page
GeoServer extension:
Importer / REST API
GeoServer customization:
Custom visual theme
Status Monitoring
The Status Monitoring tab is now included in the GeoServer Status page. This provides system statistics so monitor resource use from the Web UI.

System status
Security
GeoServer enterprise:
LDAP
Digest
X.509
GeoServer extension (premium):
GeoFence
OAuth
GeoCat respects the community responsible disclosure policy.
Authentication key extension
The Authkey extension is now available, allowing security unaware applications to access GeoServer. In order to keep the system secure the keys should be managed as temporary session tokens by an external application.
URL Checks
Many OGC protocols encourage communication between systems:
WMS GetMap requests with remote SLD stylesheets (via
sld
parameter)Styles referencing remote icons as external graphics
WMS GetMap in feature portrayal mode (using
REMOTE_OWS
andREMOTE_OWS_TYPE
parameters)WPS remote inputs, either as GET or POST requests
These facilities, while powerful, can be used to implement a Service Side Request Forgery (SSRF) as part of their normal function.
To safely mitigate abuse of OGC protocols for SSRF use
page to configure URL Checks. These checks are performed before allowing service operations to contact a remote service. A testing tool is included on this page to verify correct operation.
URL Check Page
Reference:
GeoFence Internal Server Extension
Originally a standalone service offering fine grain control over GeoServer security this functionality has been packaged up and embedded into a GeoServer extension for easier deployment.
Rules provide greater control over security allowing layer by layer service restrictions
Rules can control access to data overriding layer details, using a CQL filter to limit contents returned, and default style used for rendering
Rules can limit access to a geographic extent
See :ref:’GeoFence Internal Server <community_geofence_server>’.
Vector Data
GeoServer enterprise:
GeoPkg
Shapefile / Directory
GeoServer extensions:
GML
CSV
GeoServer extensions (premium):
OGR Formats
OGR stores updated to GDAL 3.x
The OGR vector formats now work against GDAL 3.x official binaries, without requiring custom builds.
The OGR datastore can open any vector data source
Provides access to the native FileGBD library when using Windows
Can be used to open Spatialite files
Feature type customization
Feature type customization allows attributes to be renamed, or even generated on the fly using ECQL expressions.
Feature type customization can now extend to the attribute descriptions; used to provide a human readable text.

Feature Type customization
Reference:
Raster
GeoServer enterprise:
GeoTIFF
GeoServer extensions:
Image Mosaic
GeoServer extensions (premium):
Image Pyramid
GDAL Formats
Image Formats
GDAL 3.x Compatibility
The GDAL image readers have been updated and now work against GDAL 3.x official binaries, without requiring custom builds. This functionality has been developed with with GDAL 3.2 and GDAL 3.4 in mind.
Image format support based on gdal binary provided. Use with hexagon library for MrSID and ECW support.
Enterprise Premium users requesting this functionality are asked to indicate the version of gdal binary used (so we can include the appropriate gdal java bindings) .
Reference:
Image mosaic highlights
Control the content shown to users:
“virtual native resolution” read parameter to compose outputs using a native resolution. Used to advertise a reduced resolutions to users providing less detail than the native resolution on disk.
read mask parameter to clip the image to a provided geometry, to provide users access to different areas of the image.
Improvements:
Use multiple well-known-binary footprints for overviews masking
NetCDF mosaic performance improved using auxiliary store config file to share a repository
Mosaic can now handle wildcard EPSG:404000 CRS images allowing GeoServer to force the spatial reference system advertised
Additional cloud storage option:
Support for remote images in S3 or Minio. This support requires the mosaic index to be created manually.
Database
GeoServer enterprise:
PostGIS / JNDI
GeoServer extensions:
Oracle / JNDI
GeoServer extension (premium):
SQL Server / JNDI
PostGIS Geometry
PostGIS geometry handling for increased accuracy and performance:
Read geometries with measures from PostGIS and encode the results in GML.
GML does not natively support measures, so the encoding is off by default. Please ensure clients involved in WFS usage recognize this extra ordinate.
TWKB encoding for geometries for all WMS/WMTS requests, reducing the amount of data travelling from the database to GeoServer.
During WMS rendering the size of each pixel is used for on-the-fly simplification of Geometry. By making use of tiny well-known binary the amount of data is further reduced by sending over the first coordinate at high accuracy, and capturing the remaining coordinates using offsets.
Note that due to a limitation of the JDBC driver use of prepared statements is required for full binary transfer retaining accuracy. When not using prepared statements geometries are transfered using ASCII text.
PostGIS Filter Functions
Default changed to encode filter function into SQL:
String functions: strConcat, strEndsWith, strStartsWith, strEqualsIgnoreCase, strIndexOf, strLength, strToLowerCase, strToUpperCase, strReplace, strSubstring, strSubstringStart, strTrim, strTrim2
Math functions: abs, abs_2, abs_3, abs_4, ceil, floor
Date functions: dateDifference
PostGIS Highlights
Reading and writing the array data type, including native filtering (with index support, where feasible).
SSL encryption control, the driver defaults to have it on with a significant overhead, if the communication is in a trusted network the encryption can be disabled with benefit to performance
Improved encoding of OR filters, which now use the IN operator where possible, increasing the likeliness that an eventual index on that column will be used
Native KNN nearest search when using the nearest filter function
Data service
GeoServer enterprise:
WMS Cascade
WMTS Cascade
GeoServer extension:
WFS Cascade
MongoDB extension
MongoDB extension
MongoDB datastore is now available as an extensions.
Data Integration
GeoServer extension:
Pregeneralized features
INSPIRE
GeoServer extension (premium):
Application Schema
App-schema highlights
Performance and functionality:
Improved use spatial filters on nested properties, allowing a wider range of requests to be handled by the native database.
Filter improvements for multiple nested attribute matches
Apache SOLR available as an app-schema data source
App-schema mapping and configuration files can be accessed on a remote HTTP server
Quality of service
GeoServer enterprise:
Control flow
GeoServer extension:
lib-jpeg turbo
Output Formats
GeoServer extension:
Excel
Printing
Vector Tiles
GeoServer extension:
OGR output formats
GeoPackage output formats (WPS/WFS only)
GetFeature output formats
Individual output formats for GetFeature operation can be restricted.
This feature is useful for organization that no longer wish to allow shapefile download.

WFS Output format type checking
System Requirements
Java 11 or Java 17
GeoServer Enterprise works with either Java 11 or Java 17. Tomcat 9 or newer is required for the WAR install.
The Java ecosystem is now being led by the open source OpenJDK project, with long term support available from a range of organizations notably RedHat OpenJDK and Eclipse Adoptium. The GeoTools user guide provides an overview of Java distributions.
Java ecosystem is led by the open-source OpenJDK project
While Java 8 will continue to be available, many libraries and tools require Java 11
Java 11 no longer supports the Java 2 extension mechanism used for native JAI and native ImageIO libraries. We recommend the use of the pure Java JAI-EXT operations which have been made the default.
JAI-EXT operations
The JAI-EXT library offers a pure java implementation enhanced for geospatial functionality supporting NODATA pixels and support for vector footprints.

JAI-EXT Operations
Security
URL Checks
Many OGC protocols encourage communication between systems:
WMS GetMap requests with remote SLD stylesheets (via
sld
parameter)Styles referencing remote icons as external graphics
WMS GetMap in feature portrayal mode (using
REMOTE_OWS
andREMOTE_OWS_TYPE
parameters)WPS remote inputs, either as GET or POST requests
These facilities, while powerful, can be used to implement a Service Side Request Forgery (SSRF) as part of their normal function.
To safely mitigate abuse of OGC protocols for SSRF use
page to configure URL Checks. These checks are performed before allowing service operations to contact a remote service. A testing tool is included on this page to verify correct operation.
URL Check Page
Reference:
Vector Formats
Feature type customization
Feature type customization allows attributes to be renamed, or even generated on the fly using ECQL expressions.
Update: Feature type customization can now extend to the attribute descriptions; used to provide a human readable text.

Feature Type customization
Reference:
Web Feature Service
GetFeature output formats
Individual output formats for GetFeature operation can be restricted.
This feature is useful for organization that no longer wish to allow shapefile download.

WFS Output format type checking
Configuration
Welcome Page
The welcome page has been improved with a new layout listing each Web Services by title and description, along with a welcome message introducing the GeoServer instances as a whole.
Select a workspace to change the welcome page to display the “virtual web service” for an individual workspace. This is a great approach when providing different projects or teams with their own GIS data services. Organizations making use of this facility often elect to turn off global services.
Select a layer for a “virtual web service” constrained to a single data product suitable for use as an online resource in a metadata record. This is a great approach when working with a GeoServer with tens of thousands of layers which rely on the metadata catalogue for data discovery.

Welcome Page
Contact Information
Contact information welcome message is available to provide an introduction.
Contact information organization name and online resource is used to provide an optional link to an organization’s website.
These settings can be overridden on a workspace basis to provide an overview and contact information for a team or project.

Contact information
Styles
The style list now includes format information.

Styles List Format
Log4J 2
The application has updated to Log4J 2 for logging services:
The built-in profiles will migrate from
properties
toxml
and will always be kept up to date.Your own logging profiles are defined using a range of formats: xml, properties, json and yaml. Any configuration listed following
logs/*_LOGGGING.*
will be available for use.RollingFile appender offers more sophisticated stratagies, with the ability to compress log files once they are no longer in use.
Improved stack-trace representation is available, filtering out internal-java references to improve readability.
Automatic management of built-in logging profiles available with
UPDATE_BUILT_IN_LOGGING_PROFILES=true
system property.

Global Settings Logging Configuration
Reference:
Request Logging
Request logging is now available as an option in global settings (previously this functionality was on available via editing geoserver.xml
or web.xml
file.)
The path of each request can be logged along with optionally logging the headers and the request body (for POST requests). When logging request body the number of bytes is logged, along with a snippet up to a maximum size specified.
For customers using oauth open id connect we have found an incompatibility with logging post request

Request logging
Reference:
JVM Console: Java Stack and Heap
A new feature is the ability to report and download:
Java stack information showing what activities are being performed.
Java heap information showing how memory is being used
These facilities are useful for troubleshooting.

Server Status JVM Console
Reference: