2017-02-27 61 views
0

我是新的使用mapsever。我从互联网上下载了一个例子(http://www.codegeo.com.br/search/label/MapServer)。我在我的个人电脑,我的开发环境(地图服务器版本6.4.1)中测试过它,它可以工作。Mapserver/PostGIS FILTER查询错误

现在我把它放在“测试环境”(地图服务器版本7.0.0)中,但我在映射文件中的FILTER指令有问题。

这是.MAP文件中的代码:

DATA "the_geom FROM estados USING UNIQUE id USING SRID=4326"
FILTER "sigla ILIKE '%%state%%'"

当我执行该脚本,我得到一个空的PNG文件,但没有任何错误:

$ mapserv -nh "QUERY_STRING=map=/var/www/codegeo/codegeo.map&SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image%2Fpng&TRANSPARENT=true&LAYERS=states&estado=SP&WIDTH=256&HEIGHT=256&CRS=EPSG%3A900913&STYLES=&BBOX=0%2C0%2C2504688.5428486555%2C2504688.5428486555"

定义到映射文件文件中的日志文件有以下错误:

executing query: select "nome","codigo",encode(ST_AsBinary(ST_Force2D("the_geom"),'NDR'),'hex') as geom,"id" from estados where the_geom && ST_GeomFromText('POLYGON((0.0439453124999988 0.0439453081913454,0.0439453124999988 21.9022779666686,22.4560546875 21.9022779666686,22.4560546875 0.0439453081913454,0.0439453124999988 0.0439453081913454))',4326) and() [Mon Feb 27 11:39:06 2017].147993 msPostGISLayerWhichShapes(): Query error. Error executing query. Check server logs [Mon Feb 27 12:05:49 2017].361015 getSymbol(): Symbol definition error. Parsing error near (():(line 123) [Mon Feb 27 11:39:06 2017].147993 msPostGISLayerWhichShapes(): Query error. Error executing query. Check server logs [Mon Feb 27 12:05:49 2017].361015 getSymbol(): Symbol definition error. Parsing error near (():(line 123)

我知道这是什么毛病过滤指令。如果我评论它,我会看到网页中的图层。我没有找到任何有关ILIKE操作员的文档。

有人知道是哪个问题?

回答