1

I am new to OpenLayers and I want to add OpenLayers.Control.WMSGetFeatureInfo to get the feature info to website, but I can't figure out right method.

I also see the source code of GeoServer OpenLayers page and still I can't find the syntax of OpenLayers.Control.WMSGetFeatureInfo code?

I use GeoServer, Apache-Tomcat-6.0.35 and OpenLayers 2.10. Should I use proxy to call OpenLayers.Control.WMSGetFeatureInfo?

This is my GeoServer WMS URL:

http://localhost:8080/geoserver/sac/wms?
service=WMS&
version=1.1.0&
request=GetMap&
layers=sac:contour&
styles=&
bbox=187754.5,204980.703125,192031.40625,210022.890625&
width=434&height=512&s
rs=EPSG:5235&
format=application/openlayers

Please give me sample code which calls OpenLayers.Control.WMSGetFeatureInfo?

1
  • 1
    What do you mean when you say you see the source code but you can't find the code? Please don't just ask for "code", be very specific in what you are looking for.
    – blah238
    Commented Apr 26, 2012 at 2:53

1 Answer 1

4

you can check this example on openlayers.

    OpenLayers.ProxyHost = "proxy.cgi?url=";

    var map;

    function load() {
        map = new OpenLayers.Map('map', {
            maxExtent: new OpenLayers.Bounds(143.834,-43.648,148.479,-39.573)
        });

        var political = new OpenLayers.Layer.WMS("State Boundaries",
            "http://demo.opengeo.org/geoserver/wms", 
            {'layers': 'topp:tasmania_state_boundaries', 
transparent: true, format: 'image/gif'},
            {isBaseLayer: true}
        );
        };

        map.addLayer(political); 

if it didnt help you, you can read Open Layer with GeoSever example.

EDIT:

for wms get info function you have to add this code to which i have gave before:

info = new OpenLayers.Control.WMSGetFeatureInfo({
            url: 'http://demo.opengeo.org/geoserver/wms', 
            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();

i hope it helps you...

4
  • I look your links and those are really helpful.I change the question Commented Apr 26, 2012 at 11:44
  • @sacprasanna if the first post work for you, pls set it accepted and then ask another question for another people who want to profit by this answer...and for your new question i have updated my answer..
    – urcm
    Commented Apr 26, 2012 at 12:10
  • Ok,Yes it is the good way Commented Apr 26, 2012 at 14:03
  • Good one. But this gives muliple feature info. How to close previous popup and reload new one on next click.
    – Pari
    Commented Feb 19, 2013 at 11:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.