[mapserver-users] Passing an additional parameter via URL for WMS request - doesn't work anymore with new mapserver?

Stefan Schwarzer stefan.schwarzer at unep.org
Tue Aug 21 07:41:17 PDT 2012


Thanks so much for the quick responses!

If I understand it correctly, I need to specify "DATAPATTERN" in the MAP part, in order to use the parameter in the DATA request:

	Doc is saying: LAYER: DATA (must validate against DATAPATTERN)


which would look like this:

	SHAPEPATH '/www/xxx/data' 
	FONTSET '/www/xxx/htdocs/mod_map/etc/fonts.txt' 
	SYMBOLSET '/www/xxx/htdocs/mod_map/etc/symbols.sym' 
	DATAPATTERN '^[0-9]'


with the DATA request like:

	DATA "the_geom FROM (SELECT xxx FROM capitals WHERE capitals.id_country <> %id_country%) AS foo USING UNIQUE gid USING srid=4326"


Hmmm…. But that doesn't work.

msDrawMap(): Image handling error. Failed to draw layer named 'capitals_mask'.
msPostGISLayerWhichShapes(): Query error. Error executing query: ERROR:  syntax error at or near ")"
LINE 1: ...capitals WHERE capitals.id_country <> %id_country%) AS foo w…


Can you shed some light on it? I am not really familiar with the regular expressions. I am just passing an integer.

Thanks for any hints!

Stef




On Aug 21, 2012, at 4:10 PM, Till Adams wrote:

> Stefan,
> 
> from mapserver 6 on you must define the default values for the
> parameters in your metadata-tag and also provide a validation-pattern.
> 
> You'll find more here:
> http://mapserver.org/cgi/runsub.html
> 
> Regards, Till
> 
> 
> 
> On 21.08.2012 16:07, Stefan Schwarzer wrote:
>> Hi there,
>> 
>> I used to pass a parameter in a WMS request in order to specify which country should be highlighted. The MAPFILE would read that and, via an EXPRESSION, set all country but the selected one to a bit of opacity:
>> 
>> 	DATA "the_geom FROM (SELECT xxx FROM capitals WHERE capitals.id_country <> %id_country%) AS foo USING UNIQUE gid USING srid=4326"
>> 
>> That doesn't work anymore after upgrading our machine. So, I am not 100% sure if this comes from mapserver, or if there is anything else involved. But it seems more like a mapserver problem, as the error-message is
>> 
>> <ServiceException>
>> msDrawMap(): Image handling error. Failed to draw layer named 'capitals_selected'.
>> msPostGISLayerWhichShapes(): Query error. Error executing query: ERROR:  syntax error at or near "%"
>> LINE 1: ...als.gid FROM capitals WHERE capitals.id_country = %id_countr...
>>                                                             ^
>> 
>> msValidateParameter(): Regular expression error. Parameter pattern validation failed.
>> 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>
>> 
>> 
>> Thanks for any hints/clarification.
>> 
>> Stefan
>> _______________________________________________
>> mapserver-users mailing list
>> mapserver-users at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/mapserver-users
>> 
> 
> -- 
> 
> NEWS:
> -> GO Mobile - jetzt WebGIS auch auf Smartphones
> -> Bald OpenSource! SHOGun - das JavaBackend für WebGIS Anwendungen
> 
> 
> ----------------------------------------------------
> terrestris GmbH & Co. KG
> Puetzchens Chaussee 56
> 53227 Bonn
> Germany
> 
> Till Adams
> Geschaeftsfuehrung
> 
> Tel:	+49 (0)228 / 962 899-52
> Mobile:	+49 (0)151 / 25394429
> Fax:	+49 (0)228 / 962 899-57
> 
> adams at terrestris.de
> http://www.terrestris.de
> Amtsgericht Bonn, HRA 6835
> ----------------------------------------------------
> 
> Komplementaerin:
> 
> terrestris Verwaltungs GmbH
> 
> vertreten durch:
> Hinrich Paulsen, Till Adams
> _______________________________________________
> mapserver-users mailing list
> mapserver-users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapserver-users
> 



More information about the mapserver-users mailing list