mapbender 3 - where are we going? foss4g 2011€¦ · mapbender 3 – where are we going? –...

47
Mapbender 3 - where are we going? Astrid Emde FOSS4G Denver 2011

Upload: others

Post on 19-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 ­

where are we going?Astrid Emde

FOSS4G Denver 2011

Page 2: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 2 / 47

Astrid Emde

Mapbender Developer Team since 2004

PSC (Project Steering Commitee)

Work at WhereGroup, Bonn

Project management and a bit of development

Trainings for MapServer, PostgreSQL/PostGIS, Mapbender, GeoServer

Work with the OSGeo stack for many years

Active member in FOSSGIS e.V. and OSGeo

Page 3: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 3 / 47

WhereGroupMajor Mapbender sponsor

Company in Bonn, Germany with 16 employees

Service provider with experience in all fields of spatial data management with free software: WebGIS, SDI, database, relevant standards, trainings, conferences

Open Source projects: Mapbender, PostNAS

Page 4: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 4 / 47

Mapbender – where are we going?The concept of Mapbender

Evaluation for Mapbender3

What we chose

Demo

Getting started

Page 5: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 5 / 47

What does Mapbender do? 

Create geospatial web applications without writing a single line of code

Create and maintain an OWS repository (focus on WMS, WFS) 

Distribute configured services among applications

Grant users and groups access to applications and services

→ These attributes make Mapbender special

Page 6: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 6 / 47

The Mapbender components

Applications

OGC Web Services

Users and groups

Page 7: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 7 / 47

What does Mapbender do? 

Typical Mapbender application (Mapbender 2.7.2):

Page 8: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 8 / 47

What does Mapbender do? 

How is it created? By another Mapbender application!

Page 9: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 9 / 47

What does Mapbender do? 

The concept is easy: Mapbender is written in Mapbender!

Page 10: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 10 / 47

A History of Web Mapping

Geomajas

2009

from C.Baudson and A. Christl 2010, modified

           2011

MapQuery Mapbender3

Page 11: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 11 / 47

Mapbender History

Page 12: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47

Mapbender History

1999: experimental Perl client for OGC WMT 1.0

2001: re­implementation in PHP, operational users

2003: Adoption of Open Source license and development

2006: OSGeo foundation project, Incubation passed.

2007: Introduced jQuery­library to Mapbender

2008: Modularization, first steps using OpenLayers

2010: Version 2.7 with new features

2011: Version 3.0 re­engineering

Page 13: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 13 / 47

Project OrganisationMapbender Project Page http://www.mapbender.org

Mapbender3 http://mapbender3.org

Mapbender3 on github http://github.com/mapbender/ 

Trac http://trac.osgeo.org/mapbender/report

SVN https://svn.osgeo.org/mapbender/

Mailing lists / IRC

[email protected]

[email protected]

irc://irc.freenode.net#mapbender

Page 14: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 14 / 47

Mapbender3 Evaluation

Page 15: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 15 / 47

Mapbender3 Evaluation

No need to build everything ourselves

Use existing software

Use OpenLayers instead of reinventing the wheel

Use a framework 

serverside framework 

clientside framework

Page 16: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 16 / 47

Mapbender3 – what we chose

Page 17: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 17 / 47

Client

Server

JavaScript

PHP

Mapbender3

The Components

Page 18: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 18 / 47

The Components

Symfony2

Mapbender Starter

MapbenderCoreBundle

MapbenderWMSBundle

jQuery

jQuery UI

MapQuery

OpenLayers

More bundles

In Symfony2,bundles are plugins.

Page 19: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 19 / 47

Symfony2

Successor of Symfony 1, full OO PHP framework

Fresh from the press, released stable as of 07/28/2011

Building blocks for all modern web application needs

Database abstraction

User authentication, authorization

Templating

I18n (Internationalization)

and much more fun!

Page 20: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 20 / 47

MapQuery

MapQuery Version 0.1 was released in 2011

Implements a jQuery interface to OpenLayers

provides a set of mapping related widgets

We use MapQuery to interact with OpenLayers

Page 21: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 21 / 47

Mapbender

Collection of Symfony bundles

CoreBundle (mandatory)

Extension Bundles (optional)

WMSBundle

WMTSBundle

WMCBundle

More to come

Page 22: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 22 / 47

Mapbender CoreBundle

The base bundle for Mapbender

Offers base classes for applications, elements, layers

Provides jQuery, jQuery UI, OpenLayers and MapQuery for all other Mapbender bundles

Page 23: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 23 / 47

Mapbender Starter

A Symfony2 demo project which uses the Mapbender bundles to showcase a Mapbender3 application

Contains demo applications with WMS, WMTS and authentication

Can be used as a boiler template to start Mapbender3 projects

Page 24: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 24 / 47

PHP 5.3.2 or newer ­ essential to run Symfony2

PHP CLI for running command line operations for Symfony2 like database management

Using Doctrine – Symfony's database abstraction layer (DBAL) – we aim to provide usability with more than just PostgreSQL

Requirements

https://github.com/mapbender/mapbender­starter/blob/master/README.rst

Page 25: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 25 / 47

Getting started

Get the code (download package)

http://mapbender3.org/Download

Try the demo

http://mapbender3.org/index.php/Demo

Page 26: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 26 / 47

Installation

Install with the bootstrap or step by step

Installation with the bootstrap

curl https://raw.github.com/mapbender/mapbender­starter/master/bin/bootstrap.sh ­o ­ | sh

Read more about the installationhttp://mapbender3.org/index.php/Handbook

Page 27: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 27 / 47

Step by Step Installation

git clone https://github.com/mapbender/mapbender­starter.git mapbender­starter

cd mapbender­starter

git submodule update ­­init ­­recursive

cd application

app/console doctrine:database:create

app/console doctrine:schema:create

app/console assets:install ­­symlink web

Page 28: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 28 / 47

Mapbender3 – the Application

Page 29: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 29 / 47

Start the Welcome Page

Page 30: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 30 / 47

Application with Authentication

Page 31: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 31 / 47

Simple Application with WMS

Page 32: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 32 / 47

Calculate Area

Page 33: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 33 / 47

Measure

Page 34: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 34 / 47

Get the Map­Box

Page 35: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 35 / 47

Handle the Map­Box Results

Page 36: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 36 / 47

Service Repository

Page 37: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 37 / 47

Add a WMS to your Repository

Page 38: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 38 / 47

WMS Metadata and Layer Information

Page 39: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 39 / 47

Mapbender3 – write your first demo

Page 40: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 40 / 47

Generate an Element

Generate an element using the generator

One­line generation of ready­to­use elements

Different types for different needs

We offer map­click and map­box

Page 41: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 41 / 47

Generate your own element

app/console mapbender:generate:element --type=map-click 'Acme\DemoBundle' MyElement src

Summary of actions­ Your element AcmeDemoBundle\Element\MyElement has been created.­ The following files have been created:  ­ PHP class (src/Acme/DemoBundle/Element/MyElement.php)  ­ jQuery widget (src/Acme/DemoBundle/Resources/public/mapbender.element.myelement.js)

Follow up actionsRead about adapting your bare­bone element at http://mapbender.org/3/cookbook/element­from­skeleton

Page 42: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 42 / 47

Generate your own element

Modify the functions and add your code

Add the element to the mapbender_demo.yml to add it to the application

Page 43: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 43 / 47

Getting Help from Symfony Profiler

  /app_dev.php

Page 44: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 44 / 47

Symfony Profiler

Page 45: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 45 / 47

Future Plans

Combine the Service Repository and Application

User and group management

Storage of the user, service and application information in a database

Provide flexible configuration through the client

Page 46: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 46 / 47

Try Mapbender3 on your own

http://mapbender3.org/Demo

Page 47: Mapbender 3 - Where Are We Going? FOSS4G 2011€¦ · Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 12 / 47 Mapbender History 1999: experimental Perl client

Mapbender 3 – where are we going? – FOSS4G 2011 Denver Astrid Emde 47 / 47

Thank you for your attention!

With friendly support by:

Creative Commons Share Alike License 3.0

Copyright © 2011: Astrid Emde

If you have any questions contact

Astrid Emde ([email protected])

or write to 

mapbender­[email protected]