Re: [mapserver-users] [Scalebar] Wrong values
Fabian Rami a écrit : Hi everyone, I have a mistake with the scalebar. When i use the demo with my mapfile i have meters for europe level , centimeters for country level and kilometers for street level. I still a beginner with MapServer so if you see something wrong please tell me :) I use Teleatlas data, i have found the specification of the data : Projection: Geographic (not projected) Datum WGS84 (labeled GCS_WGS_1984 in ESRI products) Paramaters: •GEOGCS[GCS_WGS_1984, •DATUM[D_WGS_1984, •SPHEROID[WGS_1984,6378137,298.257223563]], •PRIMEM[Greenwich,0], •UNIT[Degree,0.017453292519943295]] THANKS FOR YOUR HELP :o) Hummm, i found that the minscale mapscale used to draw the map is the reason of the error. How can i know the good value to put in minscale, maxscale for having a correct behavior at the scalebar ? for example : Before with 65 at the top scale we have a graduation in meters ( +/- 0 to 80 ) Now with 65.000.000 at the top scale we have a graduation in kilometers ( 0 to 4500) How know how to set this value correctly ? ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
[mapserver-users] ShapeObj-values in python mapscript
Hi list, I'd like to access to the values of a ShapeObj in python mapscript but it seems that the values array is not accessible in python. I'm using mapscript 5.0.2 Any hint ? Thanks -- Guillaume ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
[mapserver-users] different attribute values of subfeatures and its visualization
Hello list, I have a bunch of spatial data in my PostgreSQL/PostGIS-DB. They are polyline features. Each polyline has some global attributes, which means the attributes are describing the whole line. Length is such an attribute but also the overall diameter could be one. To make it more visual, the polylines should represent tubes. A polyline consists (of course) of one or more lines. Such a line I would call subfeature. Every line has its own length and also e.g. its own diameter attribute. Sometimes the values of diameter are equal at the whole length, that is no problem. I have issues if the values are not equal. My idea was to give the subfeatures with different values an different stroke width, to represent the diameter, or at least an different color. Is there a way to tell mapserver that a feature should have such a complex visualization? I have the coordinates stored at the DB and can query it, if it helps at any point. 1) First I thought I cut the features apart and can then define classes in my mapfile. The drawback is then: I'll loose the state of the whole feature. I want to be able to query the feature and the response should include the global attributes and the ones specified by the subfeature. Hmmm... 2) I also could store the global attributes with the subfeature. But then I'll end up with a lot redundancy, which I want to avoid. Hmmm... At the end I want to define an WMS and WFS. With way 1) I also get a lot of features returned by the WFS which makes the handling at the client very memory consuming and very very slow. Therefore I want to start with the WMS but now I'm at a dead end. My question is: Is there a an other way (independent from my 1+2) to make the sizing of a feature depended on the attribution on a subfeature? I hope I could make myself understandable. But with such a complex issue (isn't it?) I'll happy to answer any open questions. Thanks in advance lars ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] ShapeObj-values in python mapscript
sure, I've noticed that. But how can I retrieve the fields names ? Thx Umberto Nicoletti a écrit : Use getValue(index) instead. Umberto On Thu, Jul 10, 2008 at 11:56 AM, Guillaume Sueur [EMAIL PROTECTED] wrote: Hi list, I'd like to access to the values of a ShapeObj in python mapscript but it seems that the values array is not accessible in python. I'm using mapscript 5.0.2 Any hint ? Thanks -- Guillaume ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] did something change in reading in empty TAB files?
Bart, The Invalid Block Type message comes from the MITAB driver in GDAL/OGR. GDAL 1.3.2 is quite old, is there any way you could switch to a more recent version of GDAL? Based on Jeff's tests this error doesn't seem to happen with MS 5.0.2/GDAL 1.5.0 ... it may also be that the problem is a side-effect of something that changed in MapServer (and would now be fixed in 5.0.x), but the first thing I'd suggest is using a newer GDAL. Daniel Bart van den Eijnden (OSGIS) wrote: Hi list, at least starting Mapserver 4.10 (GDAL 1.3.2) there seems to be a problem with reading empty MapInfo TAB files, whereas in the past (4.6 for sure) this used to work. Is this issue known to someone? The error I get is: 09-Jul-2008 18:08:23] PHP Warning: [MapServer Error]: msOGRFileNextShape(): InitBlockFromData(): Invalid Block Type: got 0 expected 2 in D:\ms4w\apps\stragisweb\htdocs\common\chameleon\htdocs\common\wrapper\drawmap.php on line 533 An example TAB file can be found here: www.osgis.nl/download/mapserver/gemgrens.zip Best regards, Bart -- Daniel Morissette http://www.mapgears.com/ ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
[mapserver-users] Problem with Mapserver GRASS vector data
Hello, Finally got Mapserver to build and am checking out the connection to GRASS. The gdal connection to display raster data works fine, but when I try to display a vector file from GRASS I get this: ** Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator, [EMAIL PROTECTED] and inform them of the time the error occurred, and anything you might have done that may have caused the error. More information about this error may be available in the server error log. Here is the URL query string http://eno.renci.org/cgi-bin/mapserv?map=/home/jd3/ms4w/apps/tutorial/htdocs/example1-A.maplayer=Example2mode=map Here is the map file I am using MAP IMAGETYPE PNG EXTENT 589980 4913700 609000 4928000 UNITS METERS SIZE 400 300 LAYER NAME Example2 TYPE LINE STATUS ON CONNECTIONTYPE OGR CONNECTION /home/jd3/grassdata/spearfish60/PERMANENT/vector/t_tracts/head DATA 1 # Layer number CLASS NAME Example2 COLOR 155 155 0 END END LAYER NAME Example1 TYPE RASTER STATUS ON DATA /home/jd3/grassdata/spearfish60/PERMANENT/cellhd/soils CLASS NAME Example1 # You need to have a class definition in the layer END END END Like I said, when I use Example1, the raster layer, it works. Here is what I receive when I do ogrinfo -ro on the vector data from the commandline -bash-3.00$ ogrinfo -ro /home/jd3/grassdata/spearfish60/PERMANENT/vector/t_tracts/head Warning 1: GRASS warning: GISBASE enviroment variable was not set, using: /usr/local/grass-6.2.3 INFO: Open of `/home/jd3/grassdata/spearfish60/PERMANENT/vector/t_tracts/head' using driver `GRASS' successful. 1: 0 (Line String) Seems to work from the commandline. Any ideas? Thanks, John Overton ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
[MAPSERVER-USERS] Odd behaviour with openlayers: think Map file error
Hi all I am not sure how to explain this, but i will try my best. I have a mapfile that works perfectly from openlayers through calling Layer.WMS. I then modified the layer file to include a point shapefile. If I then call the mapfile like: http://localhost/cgi-bin/mapserv.exe?map=c:\\ms4w\\apps\\Streetmap\\ZDM.mapMode=map all works fine, and I see the points. If I however refresh my openlayers map, I see the original map without the points displayed. I then tried to clear my cache and Ctrl f5 again, but still the same problem. I then changed my openlayers from Layer.WMS to Layer.MapServer and tried, but still the same problem. As a final test I changed it to Layer.MapServer.Untiled, and I could see the pointsthat is until I zoom in, then the points dissapear. So what is the problem? Is it possibly a map file error?, I will give an extract of my mapfile and the offending layer. I must also add that the file did get corrupt at one stage, but I did have a backup in projected file, which I did reproject to WGS84 (essentially re-creating it)...but I have no gaurantee that the backup file is not corrupted...so could all this be the fault of a corrupt shapefile?? Anyway, here is the layer extract and the header of my mapfile: LAYER NAME 'Scheme_Components' TYPE POINT DATA 'Infrastructure\Scheme_Components' METADATA 'wms_title' 'Scheme_Components' END STATUS DEFAULT TRANSPARENCY 100 PROJECTION init=epsg:4148 END CLASS MINSCALE 1 MAXSCALE 500 NAME 'Communal Standpipe' STYLE SYMBOL 'Triangle' SIZE 7 COLOR 182 120 174 END END END ___ MAP NAME 'ZDM' SIZE 600 500 UNITS dd SHAPEPATH D:\ZDM\basedata\ #CONFIG PROJ_LIB D:\WWW\WMSMapServer\ms4w\proj\nad\ CONFIG PROJ_LIB C:\ms4w\proj\nad\ FONTSET Fonts/fonts.txt SYMBOLSET Symbols/symbols.sym EXTENT 29.739840 -28.780849 32.845078 -26.922820 PROJECTION init=epsg:4148 END OUTPUTFORMAT NAME 'AGG_JPEG' DRIVER AGG/JPEG IMAGEMODE RGB FORMATOPTION QUALITY=90 END #Legend LEGEND IMAGECOLOR 255 255 255 STATUS ON KEYSIZE 16 10 LABEL TYPE truetype ANTIALIAS true FONT arial SIZE 9 COLOR 0 0 0 BUFFER 1 PARTIALS false MINDISTANCE 500 END END SCALEBAR COLOR 0 0 0 IMAGECOLOR 255 255 255 INTERVALS 3 LABEL TYPE truetype ANTIALIAS true FONT arial SIZE 7 COLOR 0 0 0 BUFFER 1 PARTIALS false MINDISTANCE 500 END OUTLINECOLOR 0 0 0 POSTLABELCACHE TRUE POSITION LL SIZE 120 4 STATUS ON STYLE 0 UNITS KILOMETERS END WEB # Set IMAGEPATH to the path where MapServer should # write its output. #IMAGEPATH 'D:\ApplicationTemp\' IMAGEPATH 'D:\Inetpub\Uploads\Temp' # Set IMAGEURL to the url that points to IMAGEPATH # as defined in your web server configuration IMAGEURL 'Temp/' # WMS server settings METADATA 'wms_title' 'ZDM' 'wms_onlineresource' 'http://wms.mapexchange.co.za/qwms/qwms.aspx?' 'wms_srs' 'EPSG:4148' END TEMPLATE Streetmap.html END -- View this message in context: http://www.nabble.com/Odd-behaviour-with-openlayers%3A-think-Map-file-error-tp18383538p18383538.html Sent from the Mapserver - User mailing list archive at Nabble.com. ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] Flash (swf) - Link between buttons and Element?
Marie-Eve, One possible was of quickly achieving this is would be for the buttons names to reflect the layer and shape they are associated with; so for example a button name would look like button_layerid_shapeid (ex button_2_44 would represent the element 44 on layer 2). I have filed a ticket on this http://trac.osgeo.org/mapserver/ticket/2691 with a patch to achieve this. Could you please review and comment? Best Regards, Marie-Eve Lévesque wrote: I am using MapServer to generate Flash (.swf). It generally works well, my shapes are generated and I get my events by ElementSelected, and my attributes in the Element object of the generated swf. But, there is one thing that I can't get: the ID associated to a button or to one of the shapes. For example, I have an object with the id 15, the name Montreal and the value 10. In Element, I have all those informations, but I don't know what button is associated to id 15... (in my case, with tests I know that button164 is associated to my id 15, but how can I know that dynamically?) What I would like to have is, either an buttonId attribute in Element, either an attribute associatedId in the button. Is there something like that in MapServer? If it doesn't exists, is there an other way to have that like between my data in Element and the generated buttons? Thanks, Marie-Eve Envoie un sourire, fais rire, amuse-toi! Employez-le maintenant! http://www.emoticonesgratuites.ca/?icid=EMFRCA120 ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users -- Assefa Yewondwossen Software Analyst Email: [EMAIL PROTECTED] http://www.dmsolutions.ca/ Phone: (613) 565-5056 (ext 14) Fax: (613) 565-0925 ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] Rotating map makes layer disappear
Hello Flavio, Thank you for your answer! I had already a projection defined for all layers. However, I tried yours too, but with the same result: All layers are drawn correctly (incl. rotation) except the single one, which is not drawn. The layer definition looks as follows: LAYER NAME No_parc TYPE ANNOTATION MAXSCALE 2000 CONNECTIONTYPE OGR CONNECTION Noparc.TAB STATUS ON STYLEITEM AUTO CLASS END PROJECTION init=epsg:21781 END END The beginning of the ogrinfo output looks as follows: INFO: Open of `Noparc.TAB' using driver `MapInfo File' successful. Layer name: Noparc Geometry: Point Feature Count: 603 Extent: (576093.803015, 184574.105015) - (579583.217242, 186778.565010) Layer SRS WKT: LOCAL_CS[Nonearth, UNIT[Meter,1.0]] ID: Integer (0.0) OGRFeature(Noparc):1 ID (Integer) = 0 Style = LABEL(t:518,a:0.00,s:3.253910g,c:#ff,p:1,f:Arial) POINT (577595.839 186382.1296042) ... What else could it be? Regards Matthias ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] ShapeObj-values in python mapscript
There's a getItem(index) method at the layer level. Steve On 7/10/2008 at 7:37 AM, in message [EMAIL PROTECTED], Guillaume Sueur [EMAIL PROTECTED] wrote: sure, I've noticed that. But how can I retrieve the fields names ? Thx Umberto Nicoletti a écrit : Use getValue(index) instead. Umberto On Thu, Jul 10, 2008 at 11:56 AM, Guillaume Sueur [EMAIL PROTECTED] wrote: Hi list, I'd like to access to the values of a ShapeObj in python mapscript but it seems that the values array is not accessible in python. I'm using mapscript 5.0.2 Any hint ? Thanks -- Guillaume ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
[mapserver-users] msencrypt mapserver 5.0.0
Hello friends i want ot work with msencrypt in mapserver 5.0 im using pmapper as framework. I look the example in mapsever documentation but it dont work for my. There is another method to use msencrypt on mapserver 5.0.0 Thanks _ Connect to the next generation of MSN Messenger http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-ussource=wlmailtagline___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
RE: [mapserver-users] Rotating map makes layer disappear
Mathias, I see that you set a MAXSCALE of 2000. If you are zoomed out beyond 2000, the layer will not draw. Try commenting it out to see if this is the issue. If so, then set a scale value that works for your purposes. Also, if you are not explicitly calling the layer by name when MapServer is called, you will need to set the LAYER STATUS to DEFAULT for it to draw. David. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Matthias Buchs Sent: Thursday, July 10, 2008 9:10 AM To: mapserver-users@lists.osgeo.org Subject: Re: [mapserver-users] Rotating map makes layer disappear Hello Flavio, Thank you for your answer! I had already a projection defined for all layers. However, I tried yours too, but with the same result: All layers are drawn correctly (incl. rotation) except the single one, which is not drawn. The layer definition looks as follows: LAYER NAME No_parc TYPE ANNOTATION MAXSCALE 2000 CONNECTIONTYPE OGR CONNECTION Noparc.TAB STATUS ON STYLEITEM AUTO CLASS END PROJECTION init=epsg:21781 END END The beginning of the ogrinfo output looks as follows: INFO: Open of `Noparc.TAB' using driver `MapInfo File' successful. Layer name: Noparc Geometry: Point Feature Count: 603 Extent: (576093.803015, 184574.105015) - (579583.217242, 186778.565010) Layer SRS WKT: LOCAL_CS[Nonearth, UNIT[Meter,1.0]] ID: Integer (0.0) OGRFeature(Noparc):1 ID (Integer) = 0 Style = LABEL(t:518,a:0.00,s:3.253910g,c:#ff,p:1,f:Arial) POINT (577595.839 186382.1296042) ... What else could it be? Regards Matthias ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
[mapserver-users] Mapscript tcl
Hello List, Where can I find a pre-build mapscript for Windows XP,Mapserver 5.x and Tcl 8.5.x? Thanks, Harm ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
RE: [mapserver-users] MapServer + Fusion
Finally got around to trying out Fusion + UMN MapServer. Went with the tutorial below and the latest Fusion 1.0.6. I first tried using my current working MapServer mapfile/environment. That was failing with not loading any tool icons or map, just blue white boxes. In IE7 I get 'maps is null or not an object' and in Firefox I get 'mapGroup has no properties'. Does anyone have any ideas on how to get this working? Thanks. - Tim Timothy J Nolte - [EMAIL PROTECTED] Network Planning Engineer iPCS Wireless, Inc. 4717 Broadmoor Ave, Suite G Kentwood, MI 49512 Office: 616-656-5163 PCS:616-706-2438 Fax:616-554-6484 Web: www.ipcswirelessinc.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Paul Spencer Sent: Monday, April 07, 2008 8:24 AM To: Gregorio Muñoz Avila Cc: mapserver-users@lists.osgeo.org Subject: Re: [mapserver-users] MapServer + Fusion Hi, there is a simple tutorial at: http://trac.osgeo.org/fusion/wiki/MapServerTutorial Cheers Paul On 7-Apr-08, at 6:08 AM, Gregorio Muñoz Avila wrote: Does anyone know how to integrate Fusion in Mapserver? ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users __ Paul Spencer Chief Technology Officer DM Solutions Group Inc http://www.dmsolutions.ca/ ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
[mapserver-users] java mapscript - couldn't manage queryByPoint
hello I couldn't manage queryByPoint function in java mapscript here is the code I have tried : double tolerance = map1.getWidth()/100; //we use this tolerance if (jeolayer.queryByPoint(map1, pt1, mapscript.MS_SINGLE ,tolerance )== 1) { resultCacheObj qresult = jeolayer.getResults() ; if (qresult.getNumresults() 0) { int shapeInd = qresult.getResult(0).getShapeindex(); jeolayer.open(); shapeObj shape=jeolayer.getFeature(shapeInd, -1); //iterate fields and getting values for(int i=0; i jeolayer.getNumitems() ; i++) { //jeolayer.getItem(i); String item=jeolayer.getItem(i); String shapeval=shape.getValue(i); String tamam=tamam ; } } } where am I doing wrong ? regards -- Ahmet Temiz Jeo. Müh. Afet İşleri Gen. Md.lüğü Deprem Ar. D. Ahmet Temiz Geo. Eng. General Dir. of Disaster Affairs -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] MapServer + Fusion
Hi Tim Is your fusion webpage can be accessed via the web ? In this way, i should take a look to see what's wrong. Thanks, Alan Nolte, Tim wrote: Finally got around to trying out Fusion + UMN MapServer. Went with the tutorial below and the latest Fusion 1.0.6. I first tried using my current working MapServer mapfile/environment. That was failing with not loading any tool icons or map, just blue white boxes. In IE7 I get 'maps is null or not an object' and in Firefox I get 'mapGroup has no properties'. Does anyone have any ideas on how to get this working? Thanks. - Tim Timothy J Nolte - [EMAIL PROTECTED] Network Planning Engineer iPCS Wireless, Inc. 4717 Broadmoor Ave, Suite G Kentwood, MI 49512 Office: 616-656-5163 PCS:616-706-2438 Fax:616-554-6484 Web: www.ipcswirelessinc.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Paul Spencer Sent: Monday, April 07, 2008 8:24 AM To: Gregorio Muñoz Avila Cc: mapserver-users@lists.osgeo.org Subject: Re: [mapserver-users] MapServer + Fusion Hi, there is a simple tutorial at: http://trac.osgeo.org/fusion/wiki/MapServerTutorial Cheers Paul On 7-Apr-08, at 6:08 AM, Gregorio Muñoz Avila wrote: Does anyone know how to integrate Fusion in Mapserver? ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users __ Paul Spencer Chief Technology Officer DM Solutions Group Inc http://www.dmsolutions.ca/ ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users -- Alan Boudreault Mapgears http://www.mapgears.com ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
[mapserver-users] WMS raster display, getfeatureinfo from vector layer
I discussed this issue with Tom K. on the IRC yesterday, and he thought it was of general interest and should be posted and potentially requested as a feature. Scenario: we have a Geologic map that has super complex cartography that we don't want to reproduce in the mapfile (600+ classes, tons of patterns, etc). So we dumped out a raster of it to serve as WMS. However, when the user does a GetFeatureInfo on this WMS, we want to return attribute data from the original shapefile. I can envision this being taken care of at the layer level as a metadata tag like WMS_query_redirect. In the short term we're working on a little apache mod_rewrite magic to take care of it :-) Cheers, Percy -- David Percy Geospatial Data Manager Geology Department Portland State University http://gisgeek.pdx.edu 503-725-3373 ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
RE: [mapserver-users] MapServer + Fusion
So, I found under fusion-templates-mapserver-standard sample files for me to try. I was able to get the gmap demo data working and even my own current Production MapServer .map file. There are a lot of strange issues that make it seem as thought I'm going to need to make a new .map file that is tuned for Fusion. I'm going to have to do some reading. Off hand, does anyone have any pointers? I'm thinking that I'm going to have to add a bunch of meta data for this to work correctly. Is Fusion using my MapServer install/mapfile as a WMS or WFS source? - Tim Timothy J Nolte - [EMAIL PROTECTED] Network Planning Engineer iPCS Wireless, Inc. 4717 Broadmoor Ave, Suite G Kentwood, MI 49512 Office: 616-656-5163 PCS:616-706-2438 Fax:616-554-6484 Web: www.ipcswirelessinc.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Alan Boudreault Sent: Thursday, July 10, 2008 1:44 PM To: mapserver-users@lists.osgeo.org Subject: Re: [mapserver-users] MapServer + Fusion Hi Tim Is your fusion webpage can be accessed via the web ? In this way, i should take a look to see what's wrong. Thanks, Alan Nolte, Tim wrote: Finally got around to trying out Fusion + UMN MapServer. Went with the tutorial below and the latest Fusion 1.0.6. I first tried using my current working MapServer mapfile/environment. That was failing with not loading any tool icons or map, just blue white boxes. In IE7 I get 'maps is null or not an object' and in Firefox I get 'mapGroup has no properties'. Does anyone have any ideas on how to get this working? Thanks. - Tim Timothy J Nolte - [EMAIL PROTECTED] Network Planning Engineer iPCS Wireless, Inc. 4717 Broadmoor Ave, Suite G Kentwood, MI 49512 Office: 616-656-5163 PCS:616-706-2438 Fax:616-554-6484 Web: www.ipcswirelessinc.com -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Paul Spencer Sent: Monday, April 07, 2008 8:24 AM To: Gregorio Muñoz Avila Cc: mapserver-users@lists.osgeo.org Subject: Re: [mapserver-users] MapServer + Fusion Hi, there is a simple tutorial at: http://trac.osgeo.org/fusion/wiki/MapServerTutorial Cheers Paul On 7-Apr-08, at 6:08 AM, Gregorio Muñoz Avila wrote: Does anyone know how to integrate Fusion in Mapserver? ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users __ Paul Spencer Chief Technology Officer DM Solutions Group Inc http://www.dmsolutions.ca/ ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users -- Alan Boudreault Mapgears http://www.mapgears.com ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
[mapserver-users] Reprojection: Maps not lining up
(This is a repost, the other one got no responses). Hi, I am using Openlayers with Mapserver to show a shapefile of roads in MN that are in epsg:26915 and allowing users to toggle between that and Google Maps (spherical Mercator projection per http://spatialreference.org/ref/user/google-projection/). I use mapserv.exe and a .map file to reproject the MN roads into the Google projection, and when I toggle between them, the extents *almost* match up. It appears that the MN roads extent covers a slightly larger area than the Google Maps extent. I don't know if this is an OpenLayers or Mapserver question, but I'm thinking it is a Mapserver one. Can anyone tell me why the extents *almost* match up? I would think that they would either match up almost exactly (or at least in a tolerance that I cannot tell by the naked eye), or I would have messed up my transformations, and it would be completely out of sync. Is it a function of disparities in the data that I cannot fix, or are there fine tunings that I can adjust to compensate? Thanks, Matt -- It is from the wellspring of our despair and the places that we are broken that we come to repair the world. -- Murray Waas ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] Reprojection: Maps not lining up
I'd cc the OpenLayers list too since I think more folks with the Google projection hang out there... Steve On 7/10/2008 at 4:35 PM, in message [EMAIL PROTECTED], Matthew Pettis [EMAIL PROTECTED] wrote: (This is a repost, the other one got no responses). Hi, I am using Openlayers with Mapserver to show a shapefile of roads in MN that are in epsg:26915 and allowing users to toggle between that and Google Maps (spherical Mercator projection per http://spatialreference.org/ref/user/google-projection/). I use mapserv.exe and a .map file to reproject the MN roads into the Google projection, and when I toggle between them, the extents *almost* match up. It appears that the MN roads extent covers a slightly larger area than the Google Maps extent. I don't know if this is an OpenLayers or Mapserver question, but I'm thinking it is a Mapserver one. Can anyone tell me why the extents *almost* match up? I would think that they would either match up almost exactly (or at least in a tolerance that I cannot tell by the naked eye), or I would have messed up my transformations, and it would be completely out of sync. Is it a function of disparities in the data that I cannot fix, or are there fine tunings that I can adjust to compensate? Thanks, Matt ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] WMS raster display,getfeatureinfo from vector layer
What about using GROUPs or layers with the same name where the second layer is TYPE QUERY? Steve On 7/10/2008 at 2:14 PM, in message [EMAIL PROTECTED], percy [EMAIL PROTECTED] wrote: I discussed this issue with Tom K. on the IRC yesterday, and he thought it was of general interest and should be posted and potentially requested as a feature. Scenario: we have a Geologic map that has super complex cartography that we don't want to reproduce in the mapfile (600+ classes, tons of patterns, etc). So we dumped out a raster of it to serve as WMS. However, when the user does a GetFeatureInfo on this WMS, we want to return attribute data from the original shapefile. I can envision this being taken care of at the layer level as a metadata tag like WMS_query_redirect. In the short term we're working on a little apache mod_rewrite magic to take care of it :-) Cheers, Percy ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] New limitations with mapserver 5 CGI
Hi Graeme: Comments inline... I definitely underestimated the impacts of those changes. Anyway... On 7/9/2008 at 11:23 PM, in message [EMAIL PROTECTED], Graeme Watmuff [EMAIL PROTECTED] wrote: It has become apparent through some frustrating moments of trial and error that many of the mapfile variables that were changeable via URL with mapserver 4.10.x CGI seem no longer changeable with v5.x or 5.2.x. There is a hint from the docs that this is because of security concerns? Our java apps don't allow web users to directly interact with the CGI, so security doesn't seem so important in our case. Allowing unaltered, direct modification of things like FILTERs or CONNECTIONS is a potential security risk although I've never run across a documented case. Filters are risky because they are passed to the underlying data driver which generally trust the contents. Some examples: map_web_metadata='text1' 'text2' map_layerName_filter=expression map_layerName_tileindex=tileindex.shp map_layerName_data=datasource allow changes to the mapfile via URL with mapserver 4.10.x Following the new syntax specified for v5 + I had expected map_web=metadata+'text1' 'text2' or maybe map_web_metadata[0]='text1'+'text2', map_layer[layerName]=filter+expression, map_layer[layerName]=tileindex+tileindex.shp, map_layer[layerName]=data+datasource to all perform in the time-honoured way. And they don't... If they did you could combine modifications to a layer in a single variable: map_layer[layerName]=filter+expression+tileindex+tileindex.shp+data+datasource Only 'data' could be changed with this new mapserver 5 syntax. I happened to discover through the change logs that changing tileindex was reinstated for mapserver 5 CGI, but using the old mapserver 4.10 syntax (map_layerName_tileindex)=tileindex.shp - not the new mapserver 5 syntax style (map_layer[layerName]=tileindex+tileindex.shp). Looking at the code, TILEINDEX is not changable via a URL with any syntax. The change log references a bug fix to 4.10. The old syntax doesn't work at all. mapserv 5 CGI throws an error (Parsing error near (filter)) when the new syntax is used for filter and ignores the old 4.10 filter syntax. This is expected. It will fail with an error as opposed to the silent failure of versions past. No URL syntax for changing the web object's metadata content appears acceptable to the mapserver 5. Correct. I would dearly like to see changing the layer filter via URL restored also to mapserver 5. And the web object's metadata setting functionality too. It's possible to customize this behavior by editing maplexer.l and recompiling the code. Simply find the keyword you're interested in supporting and change the states at which it is valid. So, for TILEINDEX: INITIALtileindex becomes: INITIAL,URL_STRINGtileindex Same goes for the other parameters you'd want to activate. Can anyone indicate what mapfile properties are or are not going to be reinstated in mapserver 5 compared to mapserver 4 for change via URL? Obviously this has development ramifications for us when we try to upgrade mapserver. If I (or anyone) can think of a way to make this tunable at runtime I'd love to talk more about it. The set of parameters supported in 5.2 has only changed a little bit since 5.0 based on user input. I can't see exposing more without good reason. FILTER in particular is worrisome and there is a work around with the runtime substitution (e.g. FILTER %someval%). In that example you can pass someval via URL but you have to define a validation pattern (a regex) to check it against. Alternatively, am I missing something with new mapserver 5 syntax? I'm curious if updating maplexer.l to fit your particular needs is workable. Graeme Watmuff Steve ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] New limitations with mapserver 5 CGI
Steve L, There was some discussion about using metadata regex's to validate changes via the URL. Did this not go into play? I thought we were going to do something like: 1) default it is restricted or disabled 2) if metadata validate_some_parameter some_regex then allow those changes that validate. Then if someone wanted to unrestrict it they could use a regex /./ to allow anything or set it to whatever. -Steve W Steve Lime wrote: Hi Graeme: Comments inline... I definitely underestimated the impacts of those changes. Anyway... On 7/9/2008 at 11:23 PM, in message [EMAIL PROTECTED], Graeme Watmuff [EMAIL PROTECTED] wrote: It has become apparent through some frustrating moments of trial and error that many of the mapfile variables that were changeable via URL with mapserver 4.10.x CGI seem no longer changeable with v5.x or 5.2.x. There is a hint from the docs that this is because of security concerns? Our java apps don't allow web users to directly interact with the CGI, so security doesn't seem so important in our case. Allowing unaltered, direct modification of things like FILTERs or CONNECTIONS is a potential security risk although I've never run across a documented case. Filters are risky because they are passed to the underlying data driver which generally trust the contents. Some examples: map_web_metadata='text1' 'text2' map_layerName_filter=expression map_layerName_tileindex=tileindex.shp map_layerName_data=datasource allow changes to the mapfile via URL with mapserver 4.10.x Following the new syntax specified for v5 + I had expected map_web=metadata+'text1' 'text2' or maybe map_web_metadata[0]='text1'+'text2', map_layer[layerName]=filter+expression, map_layer[layerName]=tileindex+tileindex.shp, map_layer[layerName]=data+datasource to all perform in the time-honoured way. And they don't... If they did you could combine modifications to a layer in a single variable: map_layer[layerName]=filter+expression+tileindex+tileindex.shp+data+datasource Only 'data' could be changed with this new mapserver 5 syntax. I happened to discover through the change logs that changing tileindex was reinstated for mapserver 5 CGI, but using the old mapserver 4.10 syntax (map_layerName_tileindex)=tileindex.shp - not the new mapserver 5 syntax style (map_layer[layerName]=tileindex+tileindex.shp). Looking at the code, TILEINDEX is not changable via a URL with any syntax. The change log references a bug fix to 4.10. The old syntax doesn't work at all. mapserv 5 CGI throws an error (Parsing error near (filter)) when the new syntax is used for filter and ignores the old 4.10 filter syntax. This is expected. It will fail with an error as opposed to the silent failure of versions past. No URL syntax for changing the web object's metadata content appears acceptable to the mapserver 5. Correct. I would dearly like to see changing the layer filter via URL restored also to mapserver 5. And the web object's metadata setting functionality too. It's possible to customize this behavior by editing maplexer.l and recompiling the code. Simply find the keyword you're interested in supporting and change the states at which it is valid. So, for TILEINDEX: INITIALtileindex becomes: INITIAL,URL_STRINGtileindex Same goes for the other parameters you'd want to activate. Can anyone indicate what mapfile properties are or are not going to be reinstated in mapserver 5 compared to mapserver 4 for change via URL? Obviously this has development ramifications for us when we try to upgrade mapserver. If I (or anyone) can think of a way to make this tunable at runtime I'd love to talk more about it. The set of parameters supported in 5.2 has only changed a little bit since 5.0 based on user input. I can't see exposing more without good reason. FILTER in particular is worrisome and there is a work around with the runtime substitution (e.g. FILTER %someval%). In that example you can pass someval via URL but you have to define a validation pattern (a regex) to check it against. Alternatively, am I missing something with new mapserver 5 syntax? I'm curious if updating maplexer.l to fit your particular needs is workable. Graeme Watmuff Steve ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] New limitations with mapserver 5 CGI
That didn't get put in place, there were implementation issues at the time and I haven't revisited. For example, we use metadata to store validation patterns you can't very well allow URL modification of metadata then. You can I guess but at risk. Plus it's not really practical to write patterns that would match large blocks of a mapfile. A single parameter maybe, like the runtime validation but not a block. Perhaps the TEMPLATEPATTERN. DATAPATTERN concept could be extend to more general use for those particularly vulnerable variables (e.g. FILTER). If you look at mapfile.c you'll see how that comes into play when changing a TEMPLATE via URL. Steve On 7/10/2008 at 6:26 PM, in message [EMAIL PROTECTED], Stephen Woodbridge [EMAIL PROTECTED] wrote: Steve L, There was some discussion about using metadata regex's to validate changes via the URL. Did this not go into play? I thought we were going to do something like: 1) default it is restricted or disabled 2) if metadata validate_some_parameter some_regex then allow those changes that validate. Then if someone wanted to unrestrict it they could use a regex /./ to allow anything or set it to whatever. -Steve W Steve Lime wrote: Hi Graeme: Comments inline... I definitely underestimated the impacts of those changes. Anyway... On 7/9/2008 at 11:23 PM, in message [EMAIL PROTECTED], Graeme Watmuff [EMAIL PROTECTED] wrote: It has become apparent through some frustrating moments of trial and error that many of the mapfile variables that were changeable via URL with mapserver 4.10.x CGI seem no longer changeable with v5.x or 5.2.x. There is a hint from the docs that this is because of security concerns? Our java apps don't allow web users to directly interact with the CGI, so security doesn't seem so important in our case. Allowing unaltered, direct modification of things like FILTERs or CONNECTIONS is a potential security risk although I've never run across a documented case. Filters are risky because they are passed to the underlying data driver which generally trust the contents. Some examples: map_web_metadata='text1' 'text2' map_layerName_filter=expression map_layerName_tileindex=tileindex.shp map_layerName_data=datasource allow changes to the mapfile via URL with mapserver 4.10.x Following the new syntax specified for v5 + I had expected map_web=metadata+'text1' 'text2' or maybe map_web_metadata[0]='text1'+'text2', map_layer[layerName]=filter+expression, map_layer[layerName]=tileindex+tileindex.shp, map_layer[layerName]=data+datasource to all perform in the time-honoured way. And they don't... If they did you could combine modifications to a layer in a single variable: map_layer[layerName]=filter+expression+tileindex+tileindex.shp+data+datasourc e Only 'data' could be changed with this new mapserver 5 syntax. I happened to discover through the change logs that changing tileindex was reinstated for mapserver 5 CGI, but using the old mapserver 4.10 syntax (map_layerName_tileindex)=tileindex.shp - not the new mapserver 5 syntax style (map_layer[layerName]=tileindex+tileindex.shp). Looking at the code, TILEINDEX is not changable via a URL with any syntax. The change log references a bug fix to 4.10. The old syntax doesn't work at all. mapserv 5 CGI throws an error (Parsing error near (filter)) when the new syntax is used for filter and ignores the old 4.10 filter syntax. This is expected. It will fail with an error as opposed to the silent failure of versions past. No URL syntax for changing the web object's metadata content appears acceptable to the mapserver 5. Correct. I would dearly like to see changing the layer filter via URL restored also to mapserver 5. And the web object's metadata setting functionality too. It's possible to customize this behavior by editing maplexer.l and recompiling the code. Simply find the keyword you're interested in supporting and change the states at which it is valid. So, for TILEINDEX: INITIALtileindex becomes: INITIAL,URL_STRINGtileindex Same goes for the other parameters you'd want to activate. Can anyone indicate what mapfile properties are or are not going to be reinstated in mapserver 5 compared to mapserver 4 for change via URL? Obviously this has development ramifications for us when we try to upgrade mapserver. If I (or anyone) can think of a way to make this tunable at runtime I'd love to talk more about it. The set of parameters supported in 5.2 has only changed a little bit since 5.0 based on user input. I can't see exposing more without good reason. FILTER in particular is worrisome and there is a work around with the runtime substitution (e.g. FILTER %someval%). In that example you can pass someval via URL but you have to define a validation pattern (a regex) to check it against. Alternatively, am I missing something with new mapserver 5 syntax? I'm
Re: [mapserver-users] WMS raster display,getfeatureinfo from vector layer
thanks, nice idea. I tried it, and that did not work... relevant mapfile section: LAYER NAME Geologic_Map_Of_North_America TYPE RASTER STATUS ON data /vol/www/ngmdb/htdocs/GMNA_INDEX_tiled.tif maxscale 1000 MINSCALE 50 Metadata WMS_TITLE Geologic Map Of North America WMS_SRS epsg:4326 END # metadata END #layer LAYER NAME Geologic_Map_Of_North_America TYPE query STATUS On data GMNA_S_OneGeo TOLERANCE 0 TOLERANCEUNITS pixels TRANSFORM TRUE DUMP TRUE HEADER templates/GMNA_query_header.html TEMPLATE templates/GMNA_query_body.html FOOTER templates/GMNA_query_footer.html Metadata WMS_TITLE Geologic Map Of North America WMS_SRS epsg:4326 GML_INCLUDE_ITEMS DisplayNam,OneGeology,Lithologic,GeologicAg,AgeMin,AgeMax,AgeMetadat WMS_INCLUDE_ITEMS DisplayNam,OneGeology,Lithologic,GeologicAg,AgeMin,AgeMax,AgeMetadat END # metadata END #layer Steve Lime wrote: What about using GROUPs or layers with the same name where the second layer is TYPE QUERY? Steve On 7/10/2008 at 2:14 PM, in message [EMAIL PROTECTED], percy [EMAIL PROTECTED] wrote: I discussed this issue with Tom K. on the IRC yesterday, and he thought it was of general interest and should be posted and potentially requested as a feature. Scenario: we have a Geologic map that has super complex cartography that we don't want to reproduce in the mapfile (600+ classes, tons of patterns, etc). So we dumped out a raster of it to serve as WMS. However, when the user does a GetFeatureInfo on this WMS, we want to return attribute data from the original shapefile. I can envision this being taken care of at the layer level as a metadata tag like WMS_query_redirect. In the short term we're working on a little apache mod_rewrite magic to take care of it :-) Cheers, Percy -- David Percy Geospatial Data Manager Geology Department Portland State University http://gisgeek.pdx.edu 503-725-3373 ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [MAPSERVER-USERS] new release of ms4w. When?
On 10-Jul-08, at 1:49 AM, BrainDrain wrote: Just waiting for new release of ms4w (upon mapserver 5.2 release). Is there any plans? (I need new mapscript c# most of all) -- The best way to follow MS4W releases and announcements is to subscribe to the MS4W mailing list: http://lists.maptools.org/mailman/listinfo/ms4w-users Another option is to see the MS4W link on the MapServer Beta download page: http://mapserver.gis.umn.edu/download/beta/ --- Jeff McKenna FOSS4G Consulting and Training Services http://www.gatewaygeomatics.com/ ___ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users
Re: [mapserver-users] New limitations with mapserver 5 CGI
Hi Steve, Thanks for replying and thanks for the coding pointers. You are right about the mapserv 4.10 tileindex syntax. Like filter, it is simply ignored by v5 rather than throwing an error. My apologies. Would it make sense to create a 'secure' version for the paranoid and a another version with full functionality? I realize this would create more maintenance work for you, but not all mapserver users are going to be able to climb inside the code themselves to modify functionality (fortunately we can). Regarding security, I presume you are concerned about mapserver exposing sensitive data to unintended users. If so, should you be taking that responsibility on yourself by limiting mapserver or should the onus be upon mapserver users to manage their own data more responsibly? I am a great believer in personal responsibility. If the security risk is made clear to users, they can make their own decisions as to the data they potentially expose to the world. We have greatly appreciated and benefited from the tremendous work you and your associates have done in bringing mapserver to the world and we have always looked forward to the added features of each new version. But upgrading now comes at some degree of inconvenience for us and maybe others unless someone wants to publish the workaround to resurrect lost functionality for all to simply acquire. I am not convinced that limiting the previous functionality is the right direction for mapserver unless you fear say a litigious threat from security breaches that people may bring upon themselves (hardly your responsibility). Those with seriously sensitive data are not going to want expose the CGI to all the world via a browser-sent URL anyway. I would expect them to send URLs from say, a java web app embedded in a secured tomcat container. Just my thoughts. Regards and best wishes Graeme On Thu, 2008-07-10 at 17:13 -0500, Steve Lime wrote: Hi Graeme: Comments inline... I definitely underestimated the impacts of those changes. Anyway... On 7/9/2008 at 11:23 PM, in message [EMAIL PROTECTED], Graeme Watmuff [EMAIL PROTECTED] wrote: It has become apparent through some frustrating moments of trial and error that many of the mapfile variables that were changeable via URL with mapserver 4.10.x CGI seem no longer changeable with v5.x or 5.2.x. There is a hint from the docs that this is because of security concerns? Our java apps don't allow web users to directly interact with the CGI, so security doesn't seem so important in our case. Allowing unaltered, direct modification of things like FILTERs or CONNECTIONS is a potential security risk although I've never run across a documented case. Filters are risky because they are passed to the underlying data driver which generally trust the contents. Some examples: map_web_metadata='text1' 'text2' map_layerName_filter=expression map_layerName_tileindex=tileindex.shp map_layerName_data=datasource allow changes to the mapfile via URL with mapserver 4.10.x Following the new syntax specified for v5 + I had expected map_web=metadata+'text1' 'text2' or maybe map_web_metadata[0]='text1'+'text2', map_layer[layerName]=filter+expression, map_layer[layerName]=tileindex+tileindex.shp, map_layer[layerName]=data+datasource to all perform in the time-honoured way. And they don't... If they did you could combine modifications to a layer in a single variable: map_layer[layerName]=filter+expression+tileindex+tileindex.shp+data+datasource Only 'data' could be changed with this new mapserver 5 syntax. I happened to discover through the change logs that changing tileindex was reinstated for mapserver 5 CGI, but using the old mapserver 4.10 syntax (map_layerName_tileindex)=tileindex.shp - not the new mapserver 5 syntax style (map_layer[layerName]=tileindex+tileindex.shp). Looking at the code, TILEINDEX is not changable via a URL with any syntax. The change log references a bug fix to 4.10. The old syntax doesn't work at all. mapserv 5 CGI throws an error (Parsing error near (filter)) when the new syntax is used for filter and ignores the old 4.10 filter syntax. This is expected. It will fail with an error as opposed to the silent failure of versions past. No URL syntax for changing the web object's metadata content appears acceptable to the mapserver 5. Correct. I would dearly like to see changing the layer filter via URL restored also to mapserver 5. And the web object's metadata setting functionality too. It's possible to customize this behavior by editing maplexer.l and recompiling the code. Simply find the keyword you're interested in supporting and change the states at which it is valid. So, for TILEINDEX: INITIALtileindex becomes: INITIAL,URL_STRINGtileindex Same goes for the other parameters you'd want to activate. Can anyone indicate what mapfile properties are or are not going
Re: [mapserver-users] New limitations with mapserver 5 CGI
I'd like to see backwards feature compatibility available, and I think the CGI override controller is one of the most powerful (under-appreciated) features of Mapserver. Since the control of what is over-rideable is in the lexer though, we're sort of in a narrow box. We could do a compile-time option, which would allow us to default to strict but allow (relatively) easy conversion to flexible. That wouldn't really help our Windows brethren though, since they mostly rely on pre-compiled versions, and binary maintainers don't maintain lots of different builds. Having a map-level run-time directive to control the availability of URL over-rides would be the ideal, IMO. Default, NONE. Other options, STRICT and FULL. However, I don't see how to get there from here with the lexer requirement. P. On Thu, Jul 10, 2008 at 6:05 PM, Graeme Watmuff [EMAIL PROTECTED] wrote: Hi Steve, Thanks for replying and thanks for the coding pointers. You are right about the mapserv 4.10 tileindex syntax. Like filter, it is simply ignored by v5 rather than throwing an error. My apologies. Would it make sense to create a 'secure' version for the paranoid and a another version with full functionality? I realize this would create more maintenance work for you, but not all mapserver users are going to be able to climb inside the code themselves to modify functionality (fortunately we can). Regarding security, I presume you are concerned about mapserver exposing sensitive data to unintended users. If so, should you be taking that responsibility on yourself by limiting mapserver or should the onus be upon mapserver users to manage their own data more responsibly? I am a great believer in personal responsibility. If the security risk is made clear to users, they can make their own decisions as to the data they potentially expose to the world. We have greatly appreciated and benefited from the tremendous work you and your associates have done in bringing mapserver to the world and we have always looked forward to the added features of each new version. But upgrading now comes at some degree of inconvenience for us and maybe others unless someone wants to publish the workaround to resurrect lost functionality for all to simply acquire. I am not convinced that limiting the previous functionality is the right direction for mapserver unless you fear say a litigious threat from security breaches that people may bring upon themselves (hardly your responsibility). Those with seriously sensitive data are not going to want expose the CGI to all the world via a browser-sent URL anyway. I would expect them to send URLs from say, a java web app embedded in a secured tomcat container. Just my thoughts. Regards and best wishes Graeme On Thu, 2008-07-10 at 17:13 -0500, Steve Lime wrote: Hi Graeme: Comments inline... I definitely underestimated the impacts of those changes. Anyway... On 7/9/2008 at 11:23 PM, in message [EMAIL PROTECTED], Graeme Watmuff [EMAIL PROTECTED] wrote: It has become apparent through some frustrating moments of trial and error that many of the mapfile variables that were changeable via URL with mapserver 4.10.x CGI seem no longer changeable with v5.x or 5.2.x. There is a hint from the docs that this is because of security concerns? Our java apps don't allow web users to directly interact with the CGI, so security doesn't seem so important in our case. Allowing unaltered, direct modification of things like FILTERs or CONNECTIONS is a potential security risk although I've never run across a documented case. Filters are risky because they are passed to the underlying data driver which generally trust the contents. Some examples: map_web_metadata='text1' 'text2' map_layerName_filter=expression map_layerName_tileindex=tileindex.shp map_layerName_data=datasource allow changes to the mapfile via URL with mapserver 4.10.x Following the new syntax specified for v5 + I had expected map_web=metadata+'text1' 'text2' or maybe map_web_metadata[0]='text1'+'text2', map_layer[layerName]=filter+expression, map_layer[layerName]=tileindex+tileindex.shp, map_layer[layerName]=data+datasource to all perform in the time-honoured way. And they don't... If they did you could combine modifications to a layer in a single variable: map_layer[layerName]=filter+expression+tileindex+tileindex.shp+data+datasource Only 'data' could be changed with this new mapserver 5 syntax. I happened to discover through the change logs that changing tileindex was reinstated for mapserver 5 CGI, but using the old mapserver 4.10 syntax (map_layerName_tileindex)=tileindex.shp - not the new mapserver 5 syntax style (map_layer[layerName]=tileindex+tileindex.shp). Looking at the code, TILEINDEX is not changable via a URL with any syntax. The change log references a bug fix to 4.10. The old syntax doesn't work at all. mapserv 5 CGI throws an
Re: [mapserver-users] New limitations with mapserver 5 CGI
Paul Ramsey wrote: I'd like to see backwards feature compatibility available, and I think the CGI override controller is one of the most powerful (under-appreciated) features of Mapserver. Since the control of what is over-rideable is in the lexer though, we're sort of in a narrow box. We could do a compile-time option, which would allow us to default to strict but allow (relatively) easy conversion to flexible. That wouldn't really help our Windows brethren though, since they mostly rely on pre-compiled versions, and binary maintainers don't maintain lots of different builds. Having a map-level run-time directive to control the availability of URL over-rides would be the ideal, IMO. Default, NONE. Other options, STRICT and FULL. However, I don't see how to get there from here with the lexer requirement. Paul, I think you would just build it with the lexer support always enabled but have the runtime restrict access to the feature based on the NONE|STRICT|FULL control flag. -Steve W P. On Thu, Jul 10, 2008 at 6:05 PM, Graeme Watmuff [EMAIL PROTECTED] wrote: Hi Steve, Thanks for replying and thanks for the coding pointers. You are right about the mapserv 4.10 tileindex syntax. Like filter, it is simply ignored by v5 rather than throwing an error. My apologies. Would it make sense to create a 'secure' version for the paranoid and a another version with full functionality? I realize this would create more maintenance work for you, but not all mapserver users are going to be able to climb inside the code themselves to modify functionality (fortunately we can). Regarding security, I presume you are concerned about mapserver exposing sensitive data to unintended users. If so, should you be taking that responsibility on yourself by limiting mapserver or should the onus be upon mapserver users to manage their own data more responsibly? I am a great believer in personal responsibility. If the security risk is made clear to users, they can make their own decisions as to the data they potentially expose to the world. We have greatly appreciated and benefited from the tremendous work you and your associates have done in bringing mapserver to the world and we have always looked forward to the added features of each new version. But upgrading now comes at some degree of inconvenience for us and maybe others unless someone wants to publish the workaround to resurrect lost functionality for all to simply acquire. I am not convinced that limiting the previous functionality is the right direction for mapserver unless you fear say a litigious threat from security breaches that people may bring upon themselves (hardly your responsibility). Those with seriously sensitive data are not going to want expose the CGI to all the world via a browser-sent URL anyway. I would expect them to send URLs from say, a java web app embedded in a secured tomcat container. Just my thoughts. Regards and best wishes Graeme On Thu, 2008-07-10 at 17:13 -0500, Steve Lime wrote: Hi Graeme: Comments inline... I definitely underestimated the impacts of those changes. Anyway... On 7/9/2008 at 11:23 PM, in message [EMAIL PROTECTED], Graeme Watmuff [EMAIL PROTECTED] wrote: It has become apparent through some frustrating moments of trial and error that many of the mapfile variables that were changeable via URL with mapserver 4.10.x CGI seem no longer changeable with v5.x or 5.2.x. There is a hint from the docs that this is because of security concerns? Our java apps don't allow web users to directly interact with the CGI, so security doesn't seem so important in our case. Allowing unaltered, direct modification of things like FILTERs or CONNECTIONS is a potential security risk although I've never run across a documented case. Filters are risky because they are passed to the underlying data driver which generally trust the contents. Some examples: map_web_metadata='text1' 'text2' map_layerName_filter=expression map_layerName_tileindex=tileindex.shp map_layerName_data=datasource allow changes to the mapfile via URL with mapserver 4.10.x Following the new syntax specified for v5 + I had expected map_web=metadata+'text1' 'text2' or maybe map_web_metadata[0]='text1'+'text2', map_layer[layerName]=filter+expression, map_layer[layerName]=tileindex+tileindex.shp, map_layer[layerName]=data+datasource to all perform in the time-honoured way. And they don't... If they did you could combine modifications to a layer in a single variable: map_layer[layerName]=filter+expression+tileindex+tileindex.shp+data+datasource Only 'data' could be changed with this new mapserver 5 syntax. I happened to discover through the change logs that changing tileindex was reinstated for mapserver 5 CGI, but using the old mapserver 4.10 syntax (map_layerName_tileindex)=tileindex.shp - not the new mapserver 5 syntax style (map_layer[layerName]=tileindex+tileindex.shp). Looking at the code, TILEINDEX is not changable via a URL with any syntax.