views:

123

answers:

2

Hi,

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"&gt;&lt;Placemark&gt;&lt;name&gt;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&amp;region=GB"&gt;&lt;/script&gt;
    <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

A: 

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.

Elliveny
Thanks. Very strange. Why does it have to be public in the first place? Virtual earth does not have this restrcition ...
csetzkorn
I explained why in the post I linked to in the other answer, which you seem to have ignored.
Marcelo
A: 

You cannot use /home/test. See this answer from a few days ago:

http://stackoverflow.com/questions/3435566/google-maps-kml-files/

Marcelo