[mapserver-users] Variable-substitution cause WMS GetFeatureInfo error
AlessioDL
alessio.dilorenzo at gmail.com
Thu Aug 27 01:41:33 PDT 2009
I post the my code... hope this "helps to help" :-)
Mapfile layer:
LAYER
NAME "QueryAreas"
TYPE POLYGON
CONNECTIONTYPE postgis
CONNECTION "host=localhost user=***password=*** dbname=***"
DATA "the_geom FROM (SELECT * FROM areas)AS foo USING UNIQUE gid USING
SRID=4326"
FILTER "YEAR = %YEAR%"
METADATA
"wms_title" "Query Areas"
"wms_include_items" "all"
"wms_exclude_items" "the_geom"
END
DUMP TRUE
STATUS ON
TRANSPARENCY ALPHA
CLASS
TEMPLATE "../TemplateMS/areas.html"
NAME "Areas"
STYLE
SYMBOL "simpleline"
SIZE 2
OUTLINECOLOR 0 0 0
COLOR 255 127 36
END #Style end
END #Class end
END #Layer end
OpenLayers code:
[code]
var map, qAreas, year;
var wmsURL =
"http://correggiov3/cgi-bin/mapserv.exe?map=/ms4w/apps/caps_manager/Mapfiles/wms.map";
var cgiURL = "http://correggiov3/cgi-bin/mapserv.exe?";
var proj4326 = new OpenLayers.Projection("EPSG:4326");
var proj900913 = new OpenLayers.Projection("EPSG:900913");
function initMap(){
OpenLayers.IMAGE_RELOAD_ATTEMPTS = 3;
OpenLayers.Util.onImageLoadErrorColor = "transparent";
startBounds = new
OpenLayers.Bounds(1297594.634132,5197717.568058,2178149.1998195,5818997.7338486);
options = {
controls:[],
projection: new OpenLayers.Projection("EPSG:900913"),
displayProjection: new OpenLayers.Projection("EPSG:4326"),
units: "m",
numZoomLevels: 18,
maxResolution: 156543.0339,
maxExtent: new
OpenLayers.Bounds(-20037508,-20037508,20037508,20037508.34)
};
map = new OpenLayers.Map('map', options);
// create Google Mercator Layers
var gphy = new OpenLayers.Layer.Google("Google Terrain",{type:
G_PHYSICAL_MAP, 'sphericalMercator': true});
var gmap = new OpenLayers.Layer.Google("Google
Streets",{'sphericalMercator': true});
var gsat = new OpenLayers.Layer.Google("Google Satellite",{type:
G_SATELLITE_MAP, 'sphericalMercator': true});
var ghyb = new OpenLayers.Layer.Google("Google Hybrid",{type:
G_HYBRID_MAP, 'sphericalMercator': true};
// add Layers array
map.addLayers([gphy,gmap,gsat,ghyb]);
// add simple Controls
map.addControl(new OpenLayers.Control.LayerSwitcher());
map.addControl(new OpenLayers.Control.MousePosition(/*{div:
$('coord')}*/));
map.zoomToExtent(startBounds);
/*
* GetFeatureInfo - Pupup
* **********************
*/
var info = new OpenLayers.Control.WMSGetFeatureInfo({
url:
"http://correggiov3/cgi-bin/mapserv.exe?map=/ms4w/apps/caps_manager/Mapfiles/wms.map",
title: 'Identify features by clicking',
queryVisible: true,
eventListeners: {
getfeatureinfo: function(event) {
map.addPopup(new OpenLayers.Popup.FramedCloud(
"chicken",
map.getLonLatFromPixel(event.xy),
null,
event.text,
null,
true
));
}
}
});
map.addControl(info);
info.activate();
} //end initMap
/*
* Add the filtered layer
* **********************
*/
function addQueryLayers(){
year = document.forms['queryForm'].elements["year"].value;
areaType = document.forms['queryForm'].elements["areaType"].value;
qAreas = new OpenLayers.Layer.WMS("Selected areas", wmsURL, {
map:"/ms4w/apps/caps_manager/Mapfiles/wms.map",year:year,
layers: 'QueryAreas',
format:'image/png',
transparent:'true'
}, {'isBaseLayer':false});
map.addLayer(qAreas);
}
[/code]
--
View this message in context: http://n2.nabble.com/Variable-substitution-cause-WMS-GetFeatureInfo-error-tp3515191p3522732.html
Sent from the Mapserver - User mailing list archive at Nabble.com.
More information about the MapServer-users
mailing list