Wednesday 20 March 2013

MapGuide tidbits: Fusion with .net/Java

Let me clear up a possible misconception with Fusion.

Just because Fusion is built with HTML, JavaScript and PHP does not mean PHP is your only choice of language for building extending application functionality through the MapGuide API.

Fusion, like the AJAX viewer both provide the same common extension points for your viewer:

  • Invoke Script commands
  • Invoke URL commands
Invoke Script commands are javascript-based, so for the AJAX viewer, you're coding commands against it's viewer API, for Fusion you're coding commands against the Fusion API

Invoke URL commands simply launch the specified URL into the Task Pane or a specified target. The AJAX/Fusion viewer does not care about whether the page serving that URL is written in PHP, .net or Java. All your viewer cares about is that your page exists and accepts a SESSION, LOCALE and a MAPNAME parameter, that contain the MapGuide session id, the desired locale code, and the map name (to be able to Open() a MgMap) respectively. You can write this page in any of the languages supported by the MapGuide Web API. The viewer doesn't care.

Besides, even if you did not install the PHP viewer as part of the MapGuide installation, PHP the runtime is still installed regardless as that's required by the MapGuide Site Administrator and the feature source previewer applications and Fusion. So PHP will never be missing in a MapGuide installation.

1 comment:

Wilson H said...

i always face a lot of problems when trying to implement a whole solution on .net for mapguide. mainly in performance.

i wish there would be a way to manage the large overhead caused by server requests while doing spatial analysis.

my last implementation used your nu get plug in, which is a good way to start (i can ignore pool reloading) and wish for a future way to be more than "paste this here and hope your IDE detects them and work in they they should" (maybe i am asking from my own inexperience)