wiki:MapGuideRfc181

Version 1 (modified by jng, 4 years ago) ( diff )

--

MapGuide RFC 181 - OpenLayers preview for WMS layers and development HTTP server

This page contains a change request (RFC) for the MapGuide Open Source project. More MapGuide RFCs can be found on the RFCs page.

Status

RFC Template Version(1.0)
Submission Date
Last Modified
AuthorJackie Ng
RFC Statusdraft
Implementation Status
Proposed Milestone4.0
Assigned PSC guide(s)(when determined)
Voting History(vote date)
+1
+0
-0
-1
no vote

Overview

This RFC proposes to add a new OpenLayers HTML viewer representation for WMS responses and a new developmental HTTP server to simplify dev/testing of the MapGuide Web Tier.

Motivation

Currently, there is no built-in previewing mechanism for WMS layers in MapGuide. Right now, to preview a WMS layer from MapGuide requires an external WMS client like QGIS or Gaia to connect to the MapGuide WMS Service.

Another tangential problem is that the development/testing of mapagent C++ code in the MapGuide Web Tier is severely hampered by the need to stand up a full-blown instance of Apache httpd or IIS in front of the mapagent binaries. Having a simple http server that integrates the mapagent handling code can rapidly improve development and iteration of mapagent functionality.

Proposed Solution

Add cpp-httplib to Oem. This is a MIT-licensed header-only C++11 library for easily implementing a HTTP web server.

Add a new MgDevHttpServer to the WebTier project. This project is a simple console application using cpp-httplib that sets up a mapagent for testing/development purposes. This http server should not be used as a production or public-facing http server.

Update our WMS templates to include a HTML template for WMS GetMap previews with OpenLayers.

Update our WMS implementation to support a new FORMAT of application/openlayers. If this parameter value is supplied, an OpenLayers HTML preview of the given WMS layer is rendered instead of a map image.

A testament to the speed at which the new OpenLayers WMS representation was implemented can be attributed to the use of the new MgDevHttpServer to rapidly speed up the developer inner loop

Implications

None. This is a new output format for an existing operation.

Test Plan

Verify GetMap requests produce an OpenLayers preview of the WMS layers if a FORMAT of application/openlayers is provided

Funding / Resources

Community

Note: See TracWiki for help on using the wiki.