J'ai créé un programme mondial de bonjour pour charger un fichier kml local (emprunté à docs de google):Chargement d'un fichier .kml local à l'aide de google maps?
var ctaLayer = new google.maps.KmlLayer("http://localhost:8080/kml/cta.kml");
Cela ne fonctionne pas (rien ne se charge).
Cependant, quand je change cette ligne à:
var ctaLayer = new google.maps.KmlLayer("http://gmaps-samples.googlecode.com/svn/trunk/ggeoxml/cta.kml");
il charge correctement. Les deux fichiers kml sont identiques. Que dois-je faire pour le charger lorsque je le sers moi-même? (J'ai essayé deux chemins absolus et relatifs, et je sais que les chemins que je me sers sont corrects ...)
I a également ajouté le type MIME correct à mon fichier de configuration de serveur d'applications:
<mime-mapping>
<extension>kml</extension>
<mime-type>application/vnd.google-earth.kml+xml</mime-type>
</mime-mapping>
<mime-mapping>
<extension>kmz</extension>
<mime-type>application/vnd.google-earth.kmz</mime-type>
</mime-mapping>
Mais encore ne charge pas.
Je trouve cela dans docs de google:
L'API Google Maps prend en charge les formats de données KML et GeoRSS pour afficher des informations géographiques. Ces formats de données sont affichés sur une carte à l'aide d'un objet KmlLayer, dont le constructeur prend l'URL d'un fichier KML ou GeoRSS accessible au public.
donc je suppose que ce que je suis en train de faire est pas possible sans au service de la kml d'une URL accessible au public ... à moins que quelqu'un peut prouver le contraire
ce qui se passe lorsque vous visitez l'URL locale KML dans le navigateur? –