Allow WMTS service requests per workspace (virtual service)

Description

The idea of this work is to allow WMTS requests per workspaces (virtual services), something like this:

This two request will be executed in the context of 'topp' workspace, which means that we don't need to prefix layer names with the workspace prefix and only layers that belong to 'topp' workspace will be considered.

The GetCapabilities operation result will only advertise layers that belong to 'topp' workspace and layers names will not be prefixed by the workspace name. The advertised operations URLs will keep the workspace context.

Since GWC doesn't have the concept of workspaces (a tile layer name is just a name) and adding that concept will require some work a simple approach is to let GeoServer handle the local workspace parameter.

The idea is that GeoServer ConfigCatalog will be aware of the local workspace and will only list\show layers that belong to the local workspace and before sending the request to GWC dispatcher we rewrite the request in the way GWC is expecting it (layer names prefixed with
the workspace name and no workspace in the path).

This will be completely transparent to GWC.

Environment

None

Activity

Show:
Paul van Genuchten
August 29, 2018, 3:12 PM
Edited

Great work, I was not aware of this option until today.

An observation: at the end of capabilities 2 service urls are provided, the second one
http://localhost:8080/geoserver/tiger/gwc/rest/wmts/WMTSCapabilities.xml
throws a 404 on gs 2.13.1

Nuno Oliveira
August 30, 2018, 10:14 AM

Interesting, could you open an issue for ?

Assignee

Nuno Oliveira

Reporter

Nuno Oliveira

Triage

None

Fix versions

Affects versions

None

Components

Priority

Medium
Configure