GeoServer
| Company type | Open-source software |
|---|---|
| Industry | Geospatial technology |
| Products | GeoServer software |
In the realm of computing, GeoServer is an open-source platform developed in Java that facilitates the sharing, manipulation, and editing of geospatial data. Engineered for seamless interoperability, it distributes information from prominent spatial data sources by employing open standards. GeoServer links existing datasets to virtual globe applications such as Google Earth and NASA World Wind, alongside web mapping tools like OpenLayers, Leaflet, Google Maps, and Bing Maps. It acts as the official reference implementation of the Open Geospatial Consortium's Web Feature Service standard and additionally supports standards including Web Map Service, Web Coverage Service, and Web Processing Service.
Goals
The primary objective of GeoServer is to serve as a component within a free and open Spatial Data Infrastructure, analogous to how the Apache HTTP Server functions as an open web server for disseminating HTML. Its ambition is to provide a comparable platform dedicated to geospatial information distribution.
Features
GeoServer supports an extensive variety of data formats, such as:
- PostGIS
- Oracle Spatial
- ArcSDE
- IBM Db2
- MySQL
- MongoDB
- Apache Solr
- Shapefiles
- GeoTIFF
- GTOPO30
- ECW, MrSID
- JPEG2000
It generates output in multiple formats including KML, GML, Shapefile, GeoRSS, PDF, GeoJSON, JPEG, GIF, SVG, and PNG through established protocols. Data editing is enabled via the WFS transactional profile (WFS-T). GeoServer also incorporates a built-in OpenLayers client for previewing data layers.
When publishing geospatial content to Google Earth, GeoServer utilizes network links with KML, providing enhanced capabilities such as customizable pop-up windows, temporal and elevation visualizations, and "super-overlays."
The platform is constructed atop the GIS toolkit GeoTools.
Usage
- MassGIS (Massachusetts state GIS)
- MACRIS Maps (Massachusetts Historical Commission)
- TriMet (Portland, Oregon transit agency)
- Ordnance Survey (UK National Mapping Agency)
- Institut Géographique National (France National Mapping Agency)
- GBIF (Global Biodiversity Information Facility)
- World Bank
- Global Earthquake Model
- GMOS (Global Mercury Observation System)
- FAO (Food and Agriculture Organization of the United Nations)
- New York City Department of Information Technology and Telecommunications
- TeamSurv
- ITU
Architecture
GeoServer employs the modular request dispatch model provided by the Spring Framework, facilitating support for OGC services. Its web-based administration interface is built using wicket, which allows for extensible configuration options. The RESTful API is realized through the spring-mvc-framework component of the Spring Framework.
As a Java web application, GeoServer is compatible with standard servlet containers, while its standalone version includes an embedded instance of the Jetty (web server). It integrates GeoWebCache, a Java tile caching system akin to TileCache, which can also be used independently. The geospatial library GeoTools is packaged within GeoServer but remains available for separate use.
Since its initial release, GeoServer’s architecture has undergone significant changes: version 1.0 was developed using the STRUTS framework before transitioning to Spring and wicket by version 2.0. The REST API implementation evolved from restlet to spring-mvc-framework to enhance scalability and maintainability.
See also
- Open Geospatial Consortium
- Web Feature Service
- Web Map Service
- Web Coverage Service
- MapServer – open-source server developed in C
- Mapnik
References