Error running VEDeepEarthExampleWeb

Jan 27, 2009 at 6:17 PM

I got "The remote server returned an error: NotFound" when running VEDeepEarthExampleWeb in Reference.cs line 1882

DeepEarth.VirtualEarth.VEImageryService.

ImageryMetadataResponse _result = ((DeepEarth.VirtualEarth.VEImageryService.ImageryMetadataResponse)(base.EndInvoke("GetImageryMetadata", _args, result)));

 

Coordinator
Jan 27, 2009 at 9:24 PM
JacksonB3, its the generic error message when something goes wrong with a WCF service. I debugged this yesterday: http://www.codeplex.com/deepearth/WorkItem/View.aspx?WorkItemId=3676
In that situation it was the token service pointing to Staging but the ImageryService pointing to Production. The WCF service gave a 500 (internal error).
Get the latest source code, in the web.config set your VE credientials and point at either staging or production for the token service (3rd setting in the web.config).

    <add key="VETokenUserName" value="6Digits"/>
    <add key="VETokenPassword" value="password"/>
    <add key="VETokenServiceUrl" value="http://staging.common.virtualearth.net/find-30/common.asmx"/>

Then in the services configuration file: ServiceReferences.ClientConfig located in the silverlight part of the example (not in the deepearth source, these are just references to be copied to your actual silverlight control)

      <endpoint address="http://localhost:52640/VEDeepEarthExampleWeb/Services/VETokenService.svc"
                binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_ITokenService"
                contract="TokenService.ITokenService" name="BasicHttpBinding_ITokenService" />
      <endpoint address="http://staging.dev.virtualearth.net/webservices/v1/geocodeservice/GeocodeService.svc"
          binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IGeocodeService"
          contract="VEGeocodeService.IGeocodeService" name="BasicHttpBinding_IGeocodeService" />
      <endpoint address="http://staging.dev.virtualearth.net/webservices/v1/imageryservice/imageryservice.svc"
          binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IImageryService"
          contract="VEImageryService.IImageryService" name="BasicHttpBinding_IImageryService" />
      <endpoint address="http://staging.dev.virtualearth.net/webservices/v1/routeservice/routeservice.svc"
          binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IRouteService"
          contract="VERouteService.IRouteService" name="BasicHttpBinding_IRouteService" />

So long as these both match and your credientials have access you will be fine.
Let me know how you go.
John.
Jan 28, 2009 at 2:12 PM
I still get the same error.  My developer account my have expired.  I signed up more than 90 days ago.
Is there a way to renew it?  The verification test works on the verify credentials page.
Coordinator
Jan 28, 2009 at 9:17 PM
If the verification worked it should be fine. Have you used fiddler before?
http://www.fiddlertool.com/fiddler/

Its pretty easy to use, just start it up and you will see every outbound request from your computer. Start up the project and look for the token service being hit, make sure it is the staging url, then watch for the imageryService. I bet it comes up Red with 500 (internal error) message. Just confirm that it is the staging service as well.

If that doesn't help I can send you a really simple app with one button that just hits the service to test and debug.

John.