Hi Till: From the migration guide... "Runtime subsitution now *requires* a validation pattern be present before the substitution will take place (this had been optional). This can be done via a layer metadata tag as before or within layer or web VALIDATION blocks. See ticket #3522 for more information."
Could this be it? Steve -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of adams Sent: Wednesday, April 13, 2011 9:40 AM To: [email protected] Subject: [mapserver-users] mapserver 6 beta5 and variable substitutions Dear list, I am just testing around with mapserver 6 beta5 and wonder, if there is an issue with the variable substitutuions. Great work so far !! Thanks guys! ... and now my problem ;-): We set a filter on events due to time and level in the client and send the parameters via url as variable substitutions to the DATA -request on postgis in the mapfile: <mapfile snip> CONNECTION 'user=.... DATA "geom from (select * from table WHERE level IN (%LEVEL%) AND (date BETWEEN '%TIME_START%' AND '%TIME_END%' OR ....))) as foo using unique id using SRID=..." .... </mapfile snip> Calling this via WMS getMap-Request: http:// ... /mapserv6?map=maps.map&LAYERS=earthquake&...&LEVEL=1,2,3&TIME_START=2011-03-10&TIME_END=2011-03-24&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&.... Works fine for mapserver 5.6, but fails on mapserver6 (yes, I tried without variable substitution and all works fine after reading: http://mapserver.org/trunk/MIGRATION_GUIDE.html - thanks for that!) This is the xml error I get: <?xml version='1.0' encoding="ISO-8859-1" standalone="no" ?> <!DOCTYPE ServiceExceptionReport SYSTEM "http://schemas.opengis.net/wms/1.1.1/exception_1_1_1.dtd"> <ServiceExceptionReport version="1.1.1"> <ServiceException> msDrawMap(): Image handling error. Failed to draw layer named 'earthquake'. msPostGISLayerWhichShapes(): Query error. Error (ERROR: syntax error at or near "%" LINE 1: ...WHERE head_category_id = 34 AND level IN (%LEVE... ^ ) executing query: select "level",encode(ST_AsBinary(ST_Force_2D("head_geo"),'NDR'),'hex') as geom,"id" from (select * from app_head_event WHERE head_category_id = 34 AND level IN (%LEVEL%) AND (head_time_start::date BETWEEN '%TIME_START%' AND '%TIME_END%' OR head_time_end::date BETWEEN '%TIME_START%' AND '%TIME_END%' OR (head_time_end::date > '%TIME_END%' AND head_time_start::date < '%TIME_START%'))) as foo where head_geo && GeomFromText('POLYGON((11401706.0926982 2783146.86697407,11401706.0926982 5613635.52927973,19986215.8245698 5613635.52927973,19986215.8245698 2783146.86697407,11401706.0926982 2783146.86697407))',900913) msValidateParameter(): Regular expression error. Parameter pattern validation failed. msValidateParameter(): Regular expression error. Parameter pattern validation failed. msValidateParameter(): Regular expression error. Parameter pattern validation failed. [....] </ServiceException> </ServiceExceptionReport> It seems that the var-subs are not passed to the query... or is there something else I missed? I just found one issue on variable substitutions: http://osgeo-org.1803224.n2.nabble.com/MapServer-6-0-0-beta4-release-td6225613.html But in my eyes this does not explain my problem. Thanks in advance! Till _______________________________________________ mapserver-users mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/mapserver-users _______________________________________________ mapserver-users mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/mapserver-users
