I'm currently having some issues testing an app using Virtual Earth locally. I came across this quote on the MSDN forums: "the KML file must be parsed by a VE service and therefore publically accessible."
I assume it's correct, since Fiddler isn't showing any outgoing HTTP requests for the (local) URL specified in my VEShapeSourceSpecification constructor.
Is there a solution to this? I can't even test on our UAT environment as that isn't publically accessible either.
I'm a little confused because I'm sure I've used Virtual Earth before locally with no problems - this would have been with GeoRSS though.
Is there a solution to the local KML issue? And if not, would converting my feed to GeoRSS fix this issue? I don't want to convert our services to output GeoRSS if the same issue is going to be present.
Very simple example of the issue:
<div id='myMap' style="position:relative; width:100%; height:400px;"></div>
<script type="text/javascript" language="javascript">
map = new VEMap("myMap");
map.LoadMap(new VELatLong(1.3, 1.3), 15, "r", false);
map.ImportShapeLayerData(new VEShapeSourceSpecification(VEDataType.ImportXML, 'http://localhost:81/ts.kml', new VEShapeLayer()));
</script>
My test KML file validates at http://kmlvalidator.com/validate.htm and also works with Virtual Earth when hosted on a public site.
Thanks in advance for any assistance.
Is there a solution to the local KML issue? -> No, not unless you write your own client-side KML parser.
And if not, would converting my feed to GeoRSS fix this issue? -> Yes, accessing local GeoRSS files does not require a round-trip to the Microsoft Bing Maps servers.