New answers tagged


OK, I found the trick myself to accomplish what I want. Like this: DATA ... (select ..., '../symbols/images/' || sname || '.png' symb_name, ...) CLASS EXPRESSION (xxx) STYLE SYMBOL [symb_name] SIZE 10 END END


As @user30184 commented: Because you use &mode=map which is forcing MapServer into the native CGI mode instead of WMS. Take it off and read also examples from Your BBOX is wrong for CRS=EPSG:4326, you must give it in degrees and lat-lon order for WMS version 1.3.0. Metadata item ...


I think you mix up OSGEo4W and MS4W. These are different packages for Windows. OSGeo4W is a source for several FOSS4G project, among other MapServer and QGIS. MS4W contains programs, tools necessary to run/maintain a MapServer instance on Windows (Apache, Mapserver, Mapserver utilities, several libraries). You can use any of them but do not mix them up.


You have done right way because you got this message. mapserv(): Web application error. Traditional BROWSE mode requires a TEMPLATE in the WEB section, but none was provided. You just need to add some GET parameter in url... like this (depend on your mapfile content): ...


msPostGISLayerWhichShapes got 0 records in result. tells me that there comes nothing back from the database. Are you sure that your soil data is in WGS84? You could verify with QGIS for example that there is data in your database. Or you could do a simple query inside PostGIS to see if something is there, something like this to check your data's extent ...


More generally, perhaps the question should be "How can I persist PropertySets in an Mxd?" If so, use an extension, implementing both IExtension and IPersistVariant. See "How to persist data in a document". It's from 9.3, but still relevant.


Your MapServer .map file doesn't have to be a single file, you can build it up by including other templates, and the templates can include other files etc. So here for example is a Layer file ( that includes information that is common to other layers in a service... LAYER DATA "Kerasia_TF_PS_TS" EXTENT 21.6745814622 39.3001960995 ...


I don't think so variables would help much. You may use INCLUDE directive in map file to have simpler map file structure. Create each layer definitions in a separate file and include them in the main map file. So you have to make a copy of a layer definition map file, replace the raster name and path in it and add a new row to the master map file (e.g. ...


You can render your data from PostgreSQL directly. Documentation here. PostgreSQL layer example: LAYER NAME "province" STATUS ON TYPE POLYGON CONNECTIONTYPE POSTGIS CONNECTION "host= port=5432 dbname=xyz user=postgres password=postgres" DATA "the_geom from xyz" CLASS STYLE COLOR 128 128 128 ANTIALIAS true END ...

Top 50 recent answers are included