[mapserver-dev] Proposal to add built-in OpenLayers map viewer

thomas bonfort thomas.bonfort at gmail.com
Tue Sep 28 01:30:36 EDT 2010


On Tue, Sep 28, 2010 at 01:21, Stephen Woodbridge
<woodbri at swoodbridge.com> wrote:
> Daniel,
>
> One technical question I have is regarding versioning of OpenLayers. Since I
> assume you are just hitting the OpenLayers.org to pull in the JS do you need
> to be concerned about versions?
>
> I think you would probably be safe within the OL 2.X versions but I'm not
> sure what OL 3.X will bring. Hopefully the trivial nature of this
> implementation will be able to side step any of those potential issues. You
> might want to talk to the OL dev team regarding future proofing such an
> implementation.
>
> Obviously if it breaks down the line, we can do a dot release to fix it.
>
> Anyway, something to think about.
> I'm guessing this will not be a big issue.
>
> -Steve W

We can also host our own Openlayers.js on mapserver.org, with the
added advantage that it can be a cut down version that only has to
support Mapserver and WMS layers, and a couple of controls.

--
thomas


>
> On 9/27/2010 5:36 PM, Paul Spencer wrote:
>>
>> MapServer already supports something very much like this, you just
>> need to put the path to the template (html file) in the WEB section
>> of your map file.  I suspect you can override that with
>> tempate=[something] as part of the CGI parameters, although there are
>> some security settings that need to be respected.
>>
>> The advantage to Daniel's approach is that you don't need to have any
>> external (local) dependencies, there are no templates to add to the
>> various mapserver distributions and (presumably) no security
>> constraints referencing external resources.
>>
>> I think a separate effort that would be useful would be to build
>> templates for viewer X, figure out the correct magic for invoking
>> them for a given mapserver distribution (i.e. ms4w, fgs, etc) and
>> provide instructions on how to make it work.  Then ms4w users can
>> develop a map file and know that they put TEMPLATE 'correct path'
>> into their map files to have a quick preview using mode=browse
>>
>> Cheers
>>
>> Paul
>>
>> On 2010-09-27, at 4:17 PM, Dan Little wrote:
>>
>>> I sorta like the idea of "mode=browse" and then
>>> "template=[template]"
>>>
>>> Then have a "$prefix/share" directory that contains the
>>> "openlayers.html" template. So,
>>> "mapserv?..stuff..&mode=browse&template=openlayers", would then
>>> read form the share directory and regurgitate openlayers.html with
>>> any parsing freebies we could pore into it.
>>>
>>>
>>>
>>> ----- Original Message ----
>>>>
>>>> From: "Lime, Steve D (DNR)"<Steve.Lime at state.mn.us> To: Daniel
>>>> Morissette<dmorissette at mapgears.com>; MapServer Dev List
>>>> <mapserver-dev at lists.osgeo.org> Sent: Mon, September 27, 2010
>>>> 1:45:37 PM Subject: RE: [mapserver-dev] Proposal to add built-in
>>>> OpenLayers map viewer
>>>>
>>>> Makes sense and would not prohibit other built in templates down
>>>> the line.  So I'd be cool with mode=openlayers or even just
>>>> mode=browse returning a  basic OL template if nothing else is
>>>> defined.
>>>>
>>>> Steve
>>>>
>>>> -----Original Message----- From:
>>>> mapserver-dev-bounces at lists.osgeo.org
>>>> [mailto:mapserver-dev-bounces at lists.osgeo.org]  On Behalf Of
>>>> Daniel Morissette Sent: Monday, September 27, 2010 1:11  PM To:
>>>> MapServer Dev List Subject: Re: [mapserver-dev] Proposal to add
>>>> built-in OpenLayers map viewer
>>>>
>>>> The need I'm trying to address is the  ability for mapfile
>>>> developers to quickly test a mapfile just by typing a  simple URL
>>>> in their web browser. While I can appreciate that admin tools and
>>>> generic templates for all sorts of viewers and frameworks would
>>>> be nice to  have, that is out of scope for what I am currently
>>>> proposing.
>>>>
>>>> What I  propose is to add a simple function to mapserv.c (just a
>>>> few lines, really)  that will spit out a few lines of
>>>> HTML/JavaScript to instantiate a very  simple OpenLayers based
>>>> viewer for a given mapfile in response to a mapserv  CGI request
>>>> with mode=openlayers or a WMS GetMap request with
>>>> format=application/openlayers. I do not envision the use of
>>>> external or  configurable templates for this since that would
>>>> imply dependencies on  external files an I would ideally like
>>>> something really simple aimed at  mapfile developers that works
>>>> out of the box with just the standalone mapserv  executable and a
>>>> regular mapfile without any special  configuration.
>>>>
>>>> Does my explanation make sense? Is this not considered  useful
>>>> enough by itself to justify adding to the mapserv CGI? If there
>>>> are no  objections to this little addition then I will write a
>>>> RFC for  it.
>>>>
>>>> Daniel
>>>>
>>>>
>>>> Lime, Steve D (DNR) wrote:
>>>>>
>>>>> So where are we  at? I do like the idea. The technical
>>>>> solution, IMHO, will probably  point to how this might work
>>>>> operationally. For example, if the plan  were to simply embed a
>>>>> HTML/OL template in code then a mode=openlayers  would make
>>>>> sense. However, if the template were stored externally and a
>>>>> basic one shipped with MapServer then I'd opt for
>>>>> mode=browse&template=openlayers. The advantage of the external
>>>>> templates is extensibility and users could edit the one(s)
>>>>> provided or  add their own. They could also disable the
>>>>> functionality altogether by  removing all templates. The
>>>>> downside is setting up access and then  security. If external
>>>>> templates used the templating code and magic  strings that
>>>>> would mitigate many issues...
>>>>>
>>>>>
>>>>>
>>>>> Steve
>>>>>
>>>>>
>>>>>
>>>>> *From:* mapserver-dev-bounces at lists.osgeo.org
>>>>> [mailto:mapserver-dev-bounces at lists.osgeo.org]  *On Behalf Of
>>>>> *Tamas
>>>>
>>>> Szekeres
>>>>>
>>>>> *Sent:* Friday, September 24, 2010 4:46  PM *To:* Daniel
>>>>> Morissette *Cc:* MapServer Dev List *Subject:* Re:
>>>>> [mapserver-dev] Proposal to add built-in OpenLayers map viewer
>>>>>
>>>>>
>>>>>
>>>>> Daniel,
>>>>>
>>>>> Adding  a viewer with zoom and pan capabilities is a good idea
>>>>> which is better  then having a single image in some cases. I
>>>>> foresee a reasonable Web  administration interface to mapserver
>>>>> could also be established by such  additions which would be a
>>>>> requirement too. However embedding code from  a separate
>>>>> project seems to be a hassle, though the technical solution
>>>>> hasn't yet been mentioned in the ticket.
>>>>>
>>>>> I would be in favour  of doing either:
>>>>>
>>>>> 1. Create a simple  (mapserver specific)  .js to provide the
>>>>> required functionality (which could be extended later  with
>>>>> further options) 2. Provide a (pluggable) interface for use by
>>>>> the  potential viewers in mapserver, and  create a separate
>>>>> support  package for at least one (like openlayers for
>>>>> instance) and include the  external code to this package.
>>>>>
>>>>>
>>>>> (Just to put my 2 cents  in)
>>>>>
>>>>> Best regards,
>>>>>
>>>>> Tamas
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> 2010/9/24 Daniel Morissette<dmorissette at mapgears.com
>>>>> <mailto:dmorissette at mapgears.com>>
>>>>>
>>>>> This was discussed at the code sprint in Barcelona, and I just
>>>>> created  a ticket for it. We'd like to add this to 6.0... but I
>>>>> am realizing  just now that maybe I should start with a RFC...
>>>>>
>>>>> Anyway, here is what I wrote in the ticket, please feel free to
>>>>> comment, keeping in mind this has to remain __simple__:
>>>>>
>>>>> http://trac.osgeo.org/mapserver/ticket/3549
>>>>>
>>>>> Every once in a  while we get requests for a simple way to test
>>>>> a mapfile. One way to  handle this could be to do as GeoServer
>>>>> does and provide a built-in  OpenLayers based map viewer. In
>>>>> the GeoServer case, this viewer is  returned when one issues a
>>>>> WMS GetMap request with format=application/openlayers in it.
>>>>>
>>>>> I propose that we provide  a similar functionality in
>>>>> MapServer, which would be triggered in one of  two ways:
>>>>>
>>>>> 1- Using  mapserv?map=/path/to/my.map&'''mode=openlayers''' ...
>>>>> in this case  the viewer would be initialized based on the
>>>>> mapfile defaults, and some  of the traditional mapserv CGI
>>>>> params may also work (such as map size,  layer selection,
>>>>> etc.)
>>>>>
>>>>> 2- Using  '''format=application/openlayers''' in a WMS GetMap
>>>>> request as GeoServer  does. Note that in this case the rest of
>>>>> the GetMap parameters would be  used to configure the map to
>>>>> view (BBOX, WIDTH, HEIGHT, LAYERS, etc.)
>>>>>
>>>>> Both cases would call the same function internally to  produce
>>>>> a simple OpenLayeres viewer with one singletile layer for the
>>>>> whole map with the selected layers.
>>>>>
>>>>>
>>>>> -- Daniel Morissette http://www.mapgears.com/
>>>>> _______________________________________________ mapserver-dev
>>>>> mailing  list
>>>>> mapserver-dev at lists.osgeo.org<mailto:mapserver-dev at lists.osgeo.org>
>>>>>
>>>>>
> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------
>>>>>
>>>>>
>>>>>
> _______________________________________________
>>>>>
>>>>> mapserver-dev  mailing list mapserver-dev at lists.osgeo.org
>>>>> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>>>>
>>>>
>>>> -- Daniel Morissette http://www.mapgears.com/
>>>> _______________________________________________ mapserver-dev
>>>> mailing list mapserver-dev at lists.osgeo.org
>>>> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>>>>
>>>>
>>>> _______________________________________________ mapserver-dev
>>>> mailing list mapserver-dev at lists.osgeo.org
>>>> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>>>>
>>>
>>>
>>>
>>> _______________________________________________ mapserver-dev
>>> mailing list mapserver-dev at lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>>
>>
>> __________________________________________
>>
>> Paul Spencer Chief Technology Officer DM Solutions Group Inc
>> http://research.dmsolutions.ca/
>>
>> _______________________________________________ mapserver-dev mailing
>> list mapserver-dev at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>
> _______________________________________________
> mapserver-dev mailing list
> mapserver-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>


More information about the mapserver-dev mailing list