Jukka, Ok, no I was not aware of that! I will change and test. In any case the OGC filter works now as well as cql filter. But I do want to use cql filter (simpler) so will test the coordinate switch. I did not see any doc about that on geoserver site. I have been using CubeWerx for years and so this is a little new for me. Thanks for your help.
Cheers brad... Sent from my iPhone > On 11 Feb 2020, at 18:24, Rahkonen Jukka (MML) > <jukka.rahko...@maanmittauslaitos.fi> wrote: > > > Hi, > > If you use WFS version 1.1.0 or 2.0.0 you must rewrite the polygon so that > coordinates are in latitude-longitude order > https://docs.geoserver.org/master/en/user/services/wfs/axis_order.html. Did > you do that? > > -Jukka Rahkonen- > > Lähettäjä: Brad Spencer <b...@numaps.com.au> > Lähetetty: tiistai 11. helmikuuta 2020 1.39 > Vastaanottaja: 'Jody Garnett' <jody.garn...@gmail.com>; 'GeoServer Users' > <geoserver-users@lists.sourceforge.net> > Aihe: Re: [Geoserver-users] Geoserver 2.11.2 > > Jody, > > Your observation about TYPENAME starting with numeric appears to be the > problem. I changed the layer in geoserver to be ‘abs:MB2016meshblocks’ and > voila! > The CQL_FILTER containing a WKT spatial component plus an attribute component > worked in Geoserver CQL Filter viewer and as a URL as expected – 141 features. > > http://13.55.5.169:8008/geoserver/abs/wms?REQUEST=Getfeature&SERVICE=WFS&TYPENAME=abs:MB2016meshblocks&OUTPUTFORMAT=application/json&srsName=EPSG:4326&VERSION=1.0.0&CQL_FILTER=Within(geometry,POLYGON((144.7434 > -37.9707,144.7434 -37.6572,145.1608 -37.6572,145.1608 -37.9707,144.7434 > -37.9707))) AND persons_usually_resident > 400 > > However, I get zero returns if I use version 1.1.0 or 2.0.0 but it works a > treat with 1.0.0 and that will do me for now. > > I am not sure if this is a bug in 2.11.2 or not and maybe we should look to > upgrade. > But things to note is that if you have a non OGC compliant TYPENAME (starting > with a numeric was my case), the CQL_FILTER using BBOX spatial filter works > but when you use a CQL_FILTER using a WKT object (Polygon, Linestring, Point, > etc) as your spatial filter it may not work. > > Thanks for all your help and patience, now I have some work my end! > > Cheers, > > Brad Spencer > Managing Director > <image001.png> > http://www.numaps.com.au/ > mob: 0404 841 131 > BradArt > > > > > > > > > From: Jody Garnett <jody.garn...@gmail.com> > Sent: 10 February 2020 22:14 > To: Brad Spencer <b...@numaps.com.au> > Cc: GeoServer Users <geoserver-users@lists.sourceforge.net> > Subject: Re: [Geoserver-users] Geoserver 2.11.2 > > bbox spatial filter uses the && operator (working on the index) rather than > within which uses the geometries. > > Check the WMS spec for ImplementsSpatialFilter, think this is a flag > indicating spatial filters are available. > -- > Jody Garnett > > > On Mon, 10 Feb 2020 at 11:29, Brad Spencer <b...@numaps.com.au> wrote: > Ok we are using postgis. > Re the typename, we could look at renaming these layers as we are on > development right now, however, how come the CQL filter using a BBOX spatial > filter works? > Also, have any thoughts about the Getcapabilities constraints settings? > > <fes:Constraint name="ImplementsSpatialFilter"> > Sent from my iPhone > > > On 10 Feb 2020, at 20:40, Jody Garnett <jody.garn...@gmail.com> wrote: > > > The data source is internal to your configuration of geoserver (shapefile, > postgis, geomesa, etc...). > > - I don't think you are doing something wrong, I am suspecting that the data > source is not doing a good job of combining a within filter and an attribute > filter. > > I can see something unusual, your time name may not be valid for WFS: > - abs:2016meshblocks > - XML Element names must start with a letter or underscore, and this one > starts with "2" > > -- > Jody Garnett > > > On Mon, 10 Feb 2020 at 10:26, Brad Spencer <b...@numaps.com.au> wrote: > See below.... > > Sent from my iPhone > > > On 10 Feb 2020, at 20:11, Jody Garnett <jody.garn...@gmail.com> wrote: > > > No worries, in this case it was me making the initial mistake :P > > As for this trouble with CQL, please keep in mind that once the filter is > parsed for your request, it is then packaged up by the data source (for > example translated to SQL for a database request). > > So we really need to know what data source you are using to have a better > idea what is going on :) > > The other common thing is to make sure the coordinates in your request match > the coordinates in your > > > > Did you try my URL links? Won’t the data source be specified in the full link > that includes the CQL filter. Also be aware that one of these links shows a > BBOX spatial filter in the CQL which works correctly. The BBOX filter’s > geometry is used in the CQL Within filter to create a wkt Polygon that does > not work. This makes no sense to me. I must be doing something wrong? > brad... > > -- > Jody Garnett > > > On Mon, 10 Feb 2020 at 09:45, Brad Spencer <b...@numaps.com.au> wrote: > Jody, > > Sorry about that I was not aware of these rules. > > Cheers, Brad…. > > From: Jody Garnett <jody.garn...@gmail.com> > Sent: 10 February 2020 16:55 > To: Brad Spencer <b...@numaps.com.au> > Subject: Re: [Geoserver-users] Geoserver 2.11.2 > > Please keep our policy in mind about keeping communication on the list. I am > sorry I accidentally replied to you directly (made a mistake using my phone). > > Many folks, including my employer, offer direct email support commercially. > > By keeping thing on the list, like how to figure out the logs, we help people > doing a web search and participate in the community. > > On Mon, Feb 10, 2020 at 5:06 AM Brad Spencer <b...@numaps.com.au> wrote: > Jody, > > I simply do not understand the Geoserver logs. They make no sense to me. > Would it help if I just cut and pasted to you into an email? > > Cheers, Brad…. > > From: Jody Garnett <jody.garn...@gmail.com> > Sent: 10 February 2020 12:23 > To: Brad Spencer <b...@numaps.com.au> > Cc: geoserver-users@lists.sourceforge.net > Subject: Re: [Geoserver-users] Geoserver 2.11.2 > > > Can you increase the logging and check what query is being generated. What > data store are you using? > > On Sun, Feb 9, 2020 at 11:48 PM Brad Spencer <b...@numaps.com.au> wrote: > Guys, > > Can anyone please shed some light on this geoserver problem for me? > > Cheers, Brad…. > > From: Brad Spencer <b...@numaps.com.au> > Sent: 06 February 2020 10:44 > To: 'geoserver-users@lists.sourceforge.net' > <geoserver-users@lists.sourceforge.net> > Subject: Geoserver 2.11.2 > > I am trying to do a getFeature request using a CQL_FILTER. The filter has two > components a spatial filter defined as Within(geometry,POLYGON((144.7434 > -37.9707,144.7434 -37.6572,145.1608 -37.6572,145.1608 -37.9707,144.7434 > -37.9707))) plus an attribute filter component persons_usually_resident > > 400. This should return over 100 polygon features. I get zero features > returned when I should get over 100 returned. > > http://13.55.5.169:8008/geoserver/abs/wfs?REQUEST=GetFeature&SERVICE=WFS&VERSION=1.1.0&TYPENAME=2016MBmeshblocks&OUTPUTFORMAT=application/json&CQL_FILTER=Within(geometry,POLYGON((144.7434 > -37.9707,144.7434 -37.6572,145.1608 -37.6572,145.1608 -37.9707,144.7434 > -37.9707))) AND persons_usually_resident > 400 > > I have also trued URL encoded CQL_Filter: > > http://13.55.5.169:8008/geoserver/abs/wms?REQUEST=GetFeature&SERVICE=WFS&VERSION=1.1.0&TYPENAME=2016MBmeshblocks&OUTPUTFORMAT=application/json&CQL_FILTER=Within(geometry%2CPOLYGON((144.7434%20-37.9707%2C144.7434%20-37.6572%2C145.1608%20-37.6572%2C145.1608%20-37.9707%2C144.7434%20-37.9707)))%20AND%20component%20persons_usually_resident%20%3E%20400 > > I know the spatial data is correct as I have used a BBOX CQL_FILTER with the > same geometry and it works fine returning the correct data number of features > and no urlencoding. That also validates we are looking at the correct layer > and geometry. This also returns about the same number of features as the > spatial filters should be returning - there will be minor differences tho due > to the Within is a little different to BBOX. > > http://13.55.5.169:8008/geoserver/abs/wfs?REQUEST=GetFeature&SERVICE=WFS&VERSION=1.0.0&TYPENAME=2016MBmeshblocks&OUTPUTFORMAT=application/json&CQL_FILTER=BBOX(geometry,144.7434,-37.9707,145.1608,-37.6572)%20AND%20persons_usually_resident%20%3E%20400 > I have also checked the syntax of the WKT POLYGON((144.7434 -37.9707,144.7434 > -37.6572,145.1608 -37.6572,145.1608 -37.9707,144.7434 -37.9707)) via > https://arthur-e.github.io/Wicket/sandbox-gmaps3.html so I feel confident > that is correct. > > In addition I tried an OGC filter with no luck. > > http://13.55.5.169:8008/geoserver/abs/wfs?REQUEST=GetFeature&SERVICE=WFS&VERSION=1.1.0&TYPENAME=2016MBmeshblocks&OUTPUTFORMAT=application/json&FILTER=<Filter><And><PropertyIsGreaterThan><PropertyName>persons_usually_resident</PropertyName><Literal>400</Literal></PropertyIsGreaterThan><Within><PropertyName>geometry</PropertyName><Polygon><outerBoundaryIs><LinearRing><coordinates > decimal='.' cs=':' ts=' '>144.7434:-37.9707 144.7434:-37.6572 > 145.1608:-37.6572 145.1608:-37.9707 > 144.7434:-37.9707</coordinates></LinearRing></outerBoundaryIs></Polygon></Within></And></Filter> > I need to be able to support either a OGC or CQL spatial filter with a > variable sized search polygon which could be a circle of 40 points or a user > digitized arbitrary area. I can do this on a Cubewerx WFS service using OGC > Filter but am really struggling with Geoserver 2.11.2. > > The only thing I can think of is that the access control setting on our > geoserver may be set incorrectly. > > http://13.55.5.169:8008/geoserver/abs/wfs?request=getcapabilities&service=WFS > specifically... > > <fes:Constraint name="ImplementsSpatialFilter"> > <ows:NoValues/> > <ows:DefaultValue>FALSE</ows:DefaultValue> > </fes:Constraint> > If this is a problem how can I change this default constraint? > > We are also thinking of upgrading to a newer version of geoserver but cannot > understand why these requests are ignoring the spatial filters? > > Cheers, > > Brad Spencer > Managing Director > <image001.png> > http://www.numaps.com.au/ > mob: 0404 841 131 > BradArt > > > > > _______________________________________________ > Geoserver-users mailing list > > Please make sure you read the following two resources before posting to this > list: > - Earning your support instead of buying it, but Ian Turton: > http://www.ianturton.com/talks/foss4g.html#/ > - The GeoServer user list posting guidelines: > http://geoserver.org/comm/userlist-guidelines.html > > If you want to request a feature or an improvement, also see this: > https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer > > > Geoserver-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/geoserver-users > -- > -- > Jody Garnett > -- > -- > Jody Garnett
_______________________________________________ Geoserver-users mailing list Please make sure you read the following two resources before posting to this list: - Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/ - The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer Geoserver-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geoserver-users