Great. Thank you for this response.
I will test out 2.13 and see how it goes.

On Fri, Mar 30, 2018 at 11:01 AM, Andrea Aime <andrea.a...@geo-solutions.it>
wrote:

> Hi Kris,
> something similar was implemented starting version 2.13.0, the ECQL parser
> now accepts the EWKT syntax already
> in use in PostGIS, see here:
>
> http://docs.geotools.org/stable/userguide/library/cql/ecql.html
>
> An example of geometry with SRID is thus:
>
> SRID=4326;LINESTRING (-134.921387 58.687767, -135.303391 59.092838)
>
> Mind, the order is fixed lon/lat, just like in postgis, there is no
> supported way to get the other way around (lat/lon).
> (other ways to specify the SRS might be added in the future).
>
> Cheers
> Andrea
>
>
> On Thu, Mar 29, 2018 at 10:45 PM, Kris Johnson <krist...@d.umn.edu> wrote:
>
>> Hello,
>>
>> I am trying to filter a WMS using a WKT geometry in lat/lon (EPSG:4326)
>> coordinates.
>> According to this page (http://osgeo-org.1560.x6.nabb
>> le.com/How-to-tell-SRID-in-CQL-FILTER-td5289150.html) this might be
>> possible.
>>
>> Here is my CQL filter: INTERSECTS(geom, setSRS(POLYGON((-93.53759765625001
>> 47.609403608607785,-93.53759765625001 48.02988662072008,-92.93334960937501
>> 48.02988662072008,-92.93334960937501 47.609403608607785,-93.53759765625001
>> 47.609403608607785)), 'EPSG:4326'))
>>
>> And here is the error that returns:
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE 
>> ServiceExceptionReport SYSTEM 
>> "https://data.nrri.umn.edu/nra-geoserver/schemas/wms/1.1.1/WMS_exception_1_1_1.dtd";>
>>  <ServiceExceptionReport version="1.1.1" >   <ServiceException>
>>       Could not parse CQL filter list.
>> Function not found. Parsing : INTERSECTS(geom, 
>> setSRS(POLYGON((-93.53759765625001 47.609403608607785,-93.53759765625001 
>> 48.02988662072008,-92.93334960937501 48.02988662072008,-92.93334960937501 
>> 47.609403608607785,-93.53759765625001 47.609403608607785)), 
>> &apos;EPSG:4326&apos;)).
>> Details:
>> org.geoserver.platform.ServiceException: Could not parse CQL filter list.
>>      at 
>> org.geoserver.ows.kvp.CQLFilterKvpParser.parse(CQLFilterKvpParser.java:30)
>>      at org.geoserver.ows.util.KvpUtils.parse(KvpUtils.java:417)
>>      at org.geoserver.ows.Dispatcher.parseKVP(Dispatcher.java:1501)
>>      at org.geoserver.ows.Dispatcher.parseKVP(Dispatcher.java:1497)
>>      at org.geoserver.ows.Dispatcher.init(Dispatcher.java:319)
>>      at 
>> org.geoserver.ows.Dispatcher.handleRequestInternal(Dispatcher.java:238)
>>      at 
>> org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:174)
>>      at 
>> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:50)
>>      at 
>> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)
>>      at 
>> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
>>      at 
>> org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
>>      at 
>> org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
>>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
>>      at 
>> org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
>>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:423)
>>      at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:169)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:75)
>>      at 
>> org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:71)
>>      at 
>> org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
>>      at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144)
>>      at 
>> org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:71)
>>      at 
>> org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:46)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:50)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
>>      at 
>> org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
>>      at 
>> org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
>>      at 
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
>>      at 
>> org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
>>      at 
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
>>      at 
>> org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:54)
>>      at 
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
>>      at 
>> org.springframework.security.web.authentication.www.DigestAuthenticationFilter.doFilter(DigestAuthenticationFilter.java:124)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
>>      at 
>> org.geoserver.security.filter.GeoServerDigestAuthenticationFilter.doFilter(GeoServerDigestAuthenticationFilter.java:88)
>>      at 
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
>>      at 
>> org.geoserver.security.filter.GeoServerCredentialsFromRequestHeaderFilter.doFilter(GeoServerCredentialsFromRequestHeaderFilter.java:103)
>>      at 
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:69)
>>      at 
>> org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)
>>      at 
>> org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:53)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:73)
>>      at 
>> org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
>>      at 
>> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
>>      at 
>> org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)
>>      at 
>> org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)
>>      at 
>> org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:152)
>>      at 
>> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
>>      at 
>> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:88)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:89)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:48)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:44)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
>>      at 
>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
>>      at 
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
>>      at 
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
>>      at 
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
>>      at 
>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
>>      at 
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
>>      at 
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
>>      at 
>> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
>>      at 
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
>>      at 
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
>>      at 
>> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
>>      at 
>> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
>>      at 
>> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
>>      at 
>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
>>      at 
>> org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
>>      at 
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>>      at 
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>>      at 
>> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>>      at java.lang.Thread.run(Thread.java:748)
>> Caused by: org.geotools.filter.text.cql2.CQLException: Function not found. 
>> Parsing : INTERSECTS(geom, setSRS(POLYGON((-93.53759765625001 
>> 47.609403608607785,-93.53759765625001 48.02988662072008,-92.93334960937501 
>> 48.02988662072008,-92.93334960937501 47.609403608607785,-93.53759765625001 
>> 47.609403608607785)), &apos;EPSG:4326&apos;)).
>>      at 
>> org.geotools.filter.text.commons.AbstractFilterBuilder.buildFunction(AbstractFilterBuilder.java:1327)
>>      at 
>> org.geotools.filter.text.ecql.ECQLCompiler.build(ECQLCompiler.java:255)
>>      at 
>> org.geotools.filter.text.ecql.ECQLCompiler.jjtreeCloseNodeScope(ECQLCompiler.java:190)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.Function(ECQLParser.java:3028)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.UnaryExpression(ECQLParser.java:2523)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.MultiplicativeExpression(ECQLParser.java:2434)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.BinaryExpression(ECQLParser.java:2354)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.Expression(ECQLParser.java:2334)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.GeoRoutineArgumentList(ECQLParser.java:1015)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.RoutineInvocationGeoOp(ECQLParser.java:728)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.RoutineInvocation(ECQLParser.java:645)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.BooleanPrimary(ECQLParser.java:289)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.BooleanFactor(ECQLParser.java:259)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.BooleanTerm(ECQLParser.java:184)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.BooleanValueExpression(ECQLParser.java:137)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.SearchCondition(ECQLParser.java:128)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.SequenceOfSearchConditions(ECQLParser.java:111)
>>      at 
>> org.geotools.filter.text.generated.parsers.ECQLParser.FilterListCompilationUnit(ECQLParser.java:99)
>>      at 
>> org.geotools.filter.text.ecql.ECQLCompiler.compileFilterList(ECQLCompiler.java:126)
>>      at 
>> org.geotools.filter.text.commons.CompilerUtil.parseFilterList(CompilerUtil.java:217)
>>      at org.geotools.filter.text.ecql.ECQL.toFilterList(ECQL.java:193)
>>      at org.geotools.filter.text.ecql.ECQL.toFilterList(ECQL.java:175)
>>      at org.geoserver.util.XCQL.toFilterList(XCQL.java:33)
>>      at 
>> org.geoserver.ows.kvp.CQLFilterKvpParser.parse(CQLFilterKvpParser.java:28)
>>      ... 108 more
>>
>> </ServiceException></ServiceExceptionReport>
>>
>> Thanks for any help you can provide.
>>
>> --
>> Kris Johnson
>> Natural Resources Research Institute
>> 5013 Miller Trunk Highway, Duluth, MN 55811
>> <https://maps.google.com/?q=5013+Miller+Trunk+Highway,+Duluth,+MN+55811&entry=gmail&source=g>
>> p: 218.788.2767 <(218)%20788-2767>
>> www.nrri.umn.edu
>>
>>
>> ------------------------------------------------------------
>> ------------------
>> Check out the vibrant tech community on one of the world's most
>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>> _______________________________________________
>> 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-req
>> uesting-and-integrating-new-features-and-improvements-in-GeoServer
>>
>>
>> Geoserver-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/geoserver-users
>>
>>
>
>
> --
>
> Regards,
>
> Andrea Aime
>
> ==
> GeoServer Professional Services from the experts! Visit
> http://goo.gl/it488V for more information.
> ==
>
> Ing. Andrea Aime
> @geowolf
> Technical Lead
>
> GeoSolutions S.A.S.
> Via di Montramito 3/A
> <https://maps.google.com/?q=Via+di+Montramito+3/A+55054+%C2%A0Massarosa&entry=gmail&source=g>
> 55054  Massarosa
> <https://maps.google.com/?q=Via+di+Montramito+3/A+55054+%C2%A0Massarosa&entry=gmail&source=g>
> (LU)
> phone: +39 0584 962313
> fax: +39 0584 1660272
> mob: +39  339 8844549
>
> http://www.geo-solutions.it
> http://twitter.com/geosolutions_it
>
> AVVERTENZE AI SENSI DEL D.Lgs. 196/2003
>
> Le informazioni contenute in questo messaggio di posta elettronica e/o
> nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il
> loro utilizzo è consentito esclusivamente al destinatario del messaggio,
> per le finalità indicate nel messaggio stesso. Qualora riceviate questo
> messaggio senza esserne il destinatario, Vi preghiamo cortesemente di
> darcene notizia via e-mail e di procedere alla distruzione del messaggio
> stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso,
> divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od
> utilizzarlo per finalità diverse, costituisce comportamento contrario ai
> principi dettati dal D.Lgs. 196/2003.
>
> The information in this message and/or attachments, is intended solely for
> the attention and use of the named addressee(s) and may be confidential or
> proprietary in nature or covered by the provisions of privacy act
> (Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection
> Code).Any use not in accord with its purpose, any disclosure, reproduction,
> copying, distribution, or either dissemination, either whole or partial, is
> strictly forbidden except previous formal approval of the named
> addressee(s). If you are not the intended recipient, please contact
> immediately the sender by telephone, fax or e-mail and delete the
> information in this message that has been received in error. The sender
> does not give any warranty or accept liability as the content, accuracy or
> completeness of sent messages and accepts no responsibility  for changes
> made after they were sent or for other risks which arise as a result of
> e-mail transmission, viruses, etc.
>
>


-- 
Kris Johnson
Natural Resources Research Institute
5013 Miller Trunk Highway, Duluth, MN 55811
p: 218.788.2767
www.nrri.umn.edu
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
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

Reply via email to