GeoServer is having a big lib upgrade, so GeoFence should be compatible with it.
Main changes:
- JDK main libraries have been moved to
jakarta packages
- Spring have been upgraded to 7.0.x
- Hibernate has been upgraded to 7.1.x
- Removed H2 compatibility. Tests are performed on PG via TestContainers.
- Spring remoting is no longer available, so the standalone GeoFence configuration has to rely on REST only
- Replace CXF with Jersey
- Simplified packages hierarchy
GeoFence core packages (the ones used inside GeoServer in the embedded configuration), have been moved into the package `org.geofence.core' for more clarity.
Some classes of the core model were expected to be used in the DTO (services + REST) objects. Now everything external should only rely on the geofence-rest-api module.
Also, services (declared in geofence-services-api) are no longer used remotely (they where used by GeoServer via Spring-remoting), so their DTO do not need to be serializable anymore. Furthermore, some DTOs were using core model classes.
The core model does not need anymore xml-bind annotations, since the only streamable classes are the REST DTO.
Since most of the files will be changed (making diffs with previous release difficult), we're using this refactor also for some "cosmetic" changes, using the same sortpom and spotless plugins used by GeoServer.
The aligned version will be 3.9.
We will not to increment it further (at least in the second digit) until GeoServer will reach its 3.9. Once GeoServer will reach 3.9, we may keep versions aligned.
GeoServer is having a big lib upgrade, so GeoFence should be compatible with it.
Main changes:
jakartapackagesGeoFence core packages (the ones used inside GeoServer in the embedded configuration), have been moved into the package `org.geofence.core' for more clarity.
Some classes of the core model were expected to be used in the DTO (services + REST) objects. Now everything external should only rely on the
geofence-rest-apimodule.Also, services (declared in
geofence-services-api) are no longer used remotely (they where used by GeoServer via Spring-remoting), so their DTO do not need to be serializable anymore. Furthermore, some DTOs were using core model classes.The core model does not need anymore xml-bind annotations, since the only streamable classes are the REST DTO.
Since most of the files will be changed (making diffs with previous release difficult), we're using this refactor also for some "cosmetic" changes, using the same
sortpomandspotlessplugins used by GeoServer.The aligned version will be 3.9.
We will not to increment it further (at least in the second digit) until GeoServer will reach its 3.9. Once GeoServer will reach 3.9, we may keep versions aligned.