google maps - openlayer select wms layer -
in application have googlemap , wms layers coming geoserver, need select features on these layers, followed example: http://openlayers.org/dev/examples/getfeature-wfs.html, no errors, when click on feature, mouse start spin, no result @ all, code:
var ghyb = new openlayers.layer.google( "google hybrid", {"type": google.maps.maptypeid.hybrid, numzoomlevels: 20} ); var options = { controls: [], //sphericalmercator:true, //projection: new openlayers.projection('epsg:900913'), // senza la proiezione mi stampa metà layer units: "m", numzoomlevels: 22, maxresolution: 156543.0339, maxextent: new openlayers.bounds(-20037508.34, -20037508.34, 20037508.34, 20037508.34) }; var panzoom = new openlayers.control.panzoom(); var map = new openlayers.map('map', { div: "gmap", projection: "epsg:900913", displayprojection: "epsg:4326", //zoomoffset: 5 controls: [ panzoom, new openlayers.control.navigation() ] }); var regioni = new openlayers.layer.wms( "regioni", "http://localhost:8080/geoserver/wms", { layers: "metmi-italy:reg2011_g" , transparent: "true", format: "image/png", srs:'epsg:900913', // old: 'epsg:2077' //zoomoffset: 4, }, {isbaselayer: false,} ); control = new openlayers.control.getfeature({ protocol: openlayers.protocol.wfs.fromwmslayer(regioni), box: true, hover: true, multiplekey: "shiftkey", togglekey: "ctrlkey" }); select = new openlayers.layer.vector("selezioni", {stylemap: new openlayers.style(openlayers.feature.vector.style["select"]) }); map.addlayers([ghyb,regioni,select]) control.events.register("featureunselected", this, function(e) { removefeaturesfromgrid(e.feature.fid); select.removefeatures([e.feature]); }); control.events.register("featureselected", this, function(e) { console.log('selected') select.addfeatures([e.feature]); //addfeaturestogrid(e.feature); }); map.addcontrol(control); control.activate() i think there missing, not find it
i have not used getfeature class, use wmsgetfeatureinfo in case.
var clickcontrol = new openlayers.control.wmsgetfeatureinfo({ url: 'http://localhost:8080/geoserver/wms', title: 'some title', layers: [regioni], queryvisible: true, infoformat: 'application/vnd.ogc.gml', maxfeatures: 10 }); as general steps debug, encourage use tools figure out what, if any, http request being made browser. if using chrome or safari, can right click, "inspect element", go network tab, , click map. request should show in network tab , can diagnose if request looks correct , if response looks correct.
Comments
Post a Comment