GeoServer 2.21.1 release is now available with downloads (bin, war, windows), along with docs and extensions.

This is a stable release of the GeoServer 2.21.x series, made in conjunction with GeoTools 27.1 and GeoWebCache 1.21.1.

Thanks to Jody Garnett (GeoCat) for making this release.

Server Status

The server status page has been cleaned up with a few quality of life improvements:

  • Units supplied for numbers, such as “7 threads” or “30,000 ms”
  • Number of items held in the resource cache is shown, so there is visual feed back when using Clear button.
  • Documentation has been updated to cover all the status field descriptions and document the available actions

For more information see Server Status page.

Server status

JVM Console

A new JVM Console tab has been added to the server status page allowing a summary of memory use to be reviewed and downloaded, and a summary of active threads to be reviewed and downloaded.

For more information see JVM Console.

JVM Console

Workspace headers for proxy url

A checkbox Use headers for Proxy URL has been added to the workspace page.

This setting an individual workspace use headers for proxy URL (even when the default in global settings has been disabled).

Improvements and Fixes


GEOS-10580 Server status page improvements for status, modules and docs

GEOS-10521 Allow GetFeatureInfo over raster layers to identify both original raster and transformed vectors

GEOS-10514 Better capture catalog configuration issues: layergroup with a misconfigured layer

GEOS-10501 GetMap: support auth headers forwarding to remote SLD urls

GEOS-10495 Request Logger Memory Buffer Limits

GEOS-10489 Add options to LDAP Role Service to configure prefixes and enforce capitalization

GEOS-10464 Improve logging and check for NPEs and other issues in Importer Module


GEOS-10584 Enabling logging of request body results in stream closed errors in tomcat environment

GEOS-10570 Deleting a style in a Hazelcast cluster renames the styles directory

GEOS-10553 Importer replace fails with schema mismatch

GEOS-10548 GeoFence layer group handling is inconsistent

GEOS-10546 Invalid time expressions used in WCS 2.0 subset return a code 200 with generic exception

GEOS-10545 Layer Group cache not initialized

GEOS-10539 DescribeLayer typeName is no longer workspace qualified

GEOS-10535 WFS Update request throw NPE on bad namespace

GEOS-10534 a badly formed delete transaction will get a NPE instead of an informative error message

GEOS-10533 Review startup logging INFO and WARN updates

GEOS-10526 Parallel REST API calls failures

GEOS-10522 REST API Failure in @ExceptionHandler No input String specified

GEOS-10518 Partial RELINQUISH_LOG4J_CONTROL regression with WildFly

GEOS-10516 WMS GetCapabilities dimension representations ignores the end attribute

GEOS-10496 Using the REST API to purge NetCDF granules causes a seemingly infinite loop

GEOS-10487 Custom logging configuration not respecting log location setting

GEOS-10468 (virtually) Impossible to turn off “Enable All Statistics” in > Server status > System Status


GEOS-10588 Build structure gs-sec-oauth2-core is duplicated in the reactor

GEOS-10585 Upgrade to Jetty from 9.4.44 to 9.4.48

GEOS-10579 Bump oshi-core from 6.2.0 to 6.2.1

GEOS-10562 Bump oshi-core from 5.8.6 to 6.2.0

GEOS-10551 Refactor commons-httpclient usage in the WPS module

GEOS-10532 FreemarkerTemplateManager API changes for easier subclassing

GEOS-10529 Use Awaitility to replace waits for condition in tests

GEOS-10525 Centralize and simplify management of common test dependencies

About GeoServer 2.21

Additional information on GeoServer 2.21 series:

Release notes: ( 2.21.1 | 2.21.0 | 2.21-RC )