app-schema workspace-specific service URL corrupts namespaces of other workspaces

Description

Accessing an app-schema data store via a workspace-specific service URL causes namespaces of other workspaces to be encoded as null, even simple feature namespaces.

To reproduce:

(1) Start with the geoserver release data directory (containing topp workspace) and unpack the attached gsmlp.zip to create a single app-schema type, and start GeoServer:

(2) Access the app-schema type via its workspace-specific service URL:
http://localhost:8080/geoserver/gsmlp/ows?service=WFS&version=1.1.0&request=GetFeature&typename=gsmlp:GeologicUnitView - http://localhost:8080/geoserver/gsmlp/ows?service=WFS&version=1.1.0&request=GetFeature&typename=gsmlp:GeologicUnitView

(the ows?service=WFS and wfs? form work the same)

(3) Access topp:tasmania_roads by any means:
http://localhost:8080/geoserver/wfs?version=1.1.0&request=GetFeature&typename=topp:tasmania_roads - http://localhost:8080/geoserver/wfs?version=1.1.0&request=GetFeature&typename=topp:tasmania_roads
http://localhost:8080/geoserver/topp/ows?service=WFS&version=1.1.0&request=GetFeature&typename=topp:tasmania_roads - http://localhost:8080/geoserver/topp/ows?service=WFS&version=1.1.0&request=GetFeature&typename=topp:tasmania_roads

Result: response containing:

<gml:featureMember>
<null:tasmania_roads gml:id="tasmania_roads.1">
<null:the_geom>

This behaviour occurs if and only if the gsmlp layer is accessed first, before the topp layer, and only if the gsmlp layer is accessed through its workspace-specific service URL. Accessing the topp layer first or accessing the gsmlp layer through a global URL do not cause the corruption:
http://localhost:8080/geoserver/ows?service=WFS&version=1.1.0&request=GetFeature&typename=gsmlp:GeologicUnitView - http://localhost:8080/geoserver/ows?service=WFS&version=1.1.0&request=GetFeature&typename=gsmlp:GeologicUnitView

Looks like app-schema workspace-specific service URLs are corrupting the namespaces of other workspaces.

Workaround: do not use app-schema workspace-specific service URLs.

Environment

None

Status

Assignee

Nuno Oliveira

Reporter

codehaus

Triage

None

Fix versions

Affects versions

2.5-beta

Components

Priority

Medium
Configure