Q: Can Google Maps be shown in the AJAX viewer?
A: The answer is: NO
Why? The main reasons are:
- The Google Maps API has very tight restrictions on how it is used. I wouldn't be surprised if you'd violate some clause in the Google Maps terms of service if you did significant hacking to the AJAX viewer to have it display Google Maps data.
So simply put, give up on this idea and move on... to Fusion.
Q: Can we show Google Maps in fusion?
A: The answer is: YES
Q: Are there any catches?
A: The answer is also: YES. Your map definition needs to be in the popular spherical mercator coordinate system (CS-Map code: WGS84.PseudoMercator, EPSG code: 3857). If you modified the Map Definition's coordinate system, you have to re-project your initial view extents as well. Note that MapGuide Studio will automatically re-project these extents for you. For Maestro, you will have to figure out these coordinates yourself.
Q: What versions of MapGuide supports this Google Map integration?
A: MapGuide Open Source >= 2.1 or MapGuide Enteprise >= 2010. For MGOS 2.1 and MGE2011, this support needs to be manually hacked in. In newer versions, the support is built-in to the fusion framework and has matching editor support in Studio/Maestro.
Q: Can I enable Google Maps fusion support with MapGuide Studio/Maestro?
A: YES. MapGuide Studio/Maestro have specialized UIs to make this dead simple (See my blog post I made for my old company for how to do this in Studio). In Maestro, the UI is pretty similar.
Q: Why can't I see my Google Maps layers when I [Print / Save Map / Quick Plot ] in fusion?
A: Because this is by design and is also the same reason you won't see Yahoo or Bing layers too. All the aforementioned widgets uses MapGuide's rendering APIs which know nothing about Google Maps. To get these widgets to show Google Maps would probably be another ToS violation.
Q: How can I get Google style popups when I select an object?
A: Use an OpenLayers.Popup and display it on a function listening to Fusion's MAP_SELECTION_ON event. I'm not going to say anymore. Google searching should fill in the rest of the details.
So what if you can't or don't want to use Fusion? Well your only remaining avenue is a purely custom solution via the OpenLayers library (which supports both Google Maps and MapGuide). I won't say much more on this either because there are bajillions of differnent OpenLayers examples/blogs/discussions out there for you to get ideas on figuring out the rest.
Oh, and do read that ToS throughly too!