cs0815
cs0815

Reputation: 17418

google map problem -> google.maps.KmlLayer

I have a controller (address /Home/Test see below) which definately responds to get request with this:

<?xml version="1.0" encoding="utf-8"?><kml xmlns="http://www.opengis.net/kml/2.2"><Placemark><name>Simple placemark</name><description>Attached to the ground. Intelligently places itself
           at the height of the underlying terrain.</description><Point><coordinates>-122.0822035425683,37.42228990140251,0</coordinates></Point></Placemark></kml>

It is like a feed which responds with data (application/vnd.google-earth.kml+xml) to a get request.

I am using this javascript:

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&region=GB"></script>
    <script type="text/javascript" src="/Scripts/jquery-1.4.1.js"></script>


    <script type="text/javascript">

        $(document).ready(function() {
        var latlng = new google.maps.LatLng(37.42228990140251, -122.0822035425683);
            var options = {
                zoom: 17,
                center: latlng,
                mapTypeId: google.maps.MapTypeId.HYBRID
            };
            var map = new google.maps.Map(document.getElementById('map_canvas'), options);


            //alert(georssLayer);
            var georssLayer = new google.maps.KmlLayer('/Home/Test');

            georssLayer.setMap(map);
        });
    </script> 

The map is shown but nothing at -122.0822035425683,37.42228990140251.

Any ideas?

Maybe I missunderstand what KmlLayer does? I presume it performs a get request and then overlays the map ...

Christian

Upvotes: 3

Views: 5297

Answers (1)

Elliveny
Elliveny

Reputation: 2101

At http://code.google.com/apis/maps/documentation/javascript/overlays.html notice this: 'The Google Maps API supports the KML and GeoRSS data formats for displaying geographic information. These data formats are displayed on a map using a KmlLayer object, whose constructor takes the URL of a publicly accessible KML or GeoRSS file.' It looks to me like your request is local; move it to a server which Google can see.

Upvotes: 7

Related Questions