[Geoserver-devel] [JIRA] (GEOS-8924) GeoServer CQL cross layer filtering: querySingle/queryCollection for non-geometry attribute return

Katey Bilz created an issue

GeoServer / BugGEOS-8924

GeoServer CQL cross layer filtering: querySingle/queryCollection for non-geometry attribute return

Issue Type:

BugBug

Affects Versions:

2.10.2

Assignee:

Unassigned

Components:

Querylayer, WMS

Created:

06/Sep/18 6:26 PM

Priority:

MediumMedium

Reporter:

Katey Bilz

I have only been able to find examples where geometry attributes are returned from cross layer filtering functions, but the GeoServer documentation says:

> A common use case is to extract a geometry-valued attribute, and then use the value(s) in a spatial predicate against a geometry attribute in the primary layer.

Which leads me to believe that it was intended to be used to return other data.


I have attempted something like this: http://localhost:8181/geoserver/test/wms?service=WMS&version=1.1.0&request=GetMap&layers=test:layer1,test:layer2&styles=&bbox=-81.54053,41.61621,-77.33826,43.41248&width=768&height=330&srs=EPSG:4326&format=application/openlayers&cql_filter=INCLUDE;property2a=querySingle(‘test:layer1’,‘property1b’,'property1a=123

Where only records in layer2 that have layer2.property2a = layer1.property1b are returned.

I get the exception: “Could not parse CQL filter list.”

Similarly: http://localhost:8181/geoserver/test/wms?service=WMS&version=1.1.0&request=GetMap&layers=test:layer1,test:layer2&styles=&bbox=-81.54053,41.61621,-77.33826,43.41248&width=768&height=330&srs=EPSG:4326&format=application/openlayers&cql_filter=INCLUDE;property2a IN queryCollection(‘test:layer1’,‘property1b’,‘INCLUDE’)

Where the values of layer2 will only be returned if layer2.property2a has a value in the returned values from layer1.property1b

Add Comment

Add Comment

Get Jira notifications on your phone! Download the Jira Cloud app for Android or iOS


This message was sent by Atlassian Jira (v1001.0.0-SNAPSHOT#100091-sha1:8b1552e)

Atlassian logo