GeoServer Blog

GeoServer 1.7.5 Released

The GeoServer Team is happy to announce the the release of GeoServer 1.7.5, the sixth stable version in the 1.7 series.

This release contains some new features that are designed to improve the use of GeoServer in a production environment. Some new WMS settings have been added that allow the administrator to limit the amount of resources consumed by each WMS request, specifically in terms of memory and time used.  It is also now possible to use JNDI connection pools for the DB2 and Oracle (NG) databases, providing better integration with enterprise environments.

The features pregeneralized datastore extension now allows an administrator to set up a vector data pyramid, and therefore significantly speed up WMS data serving over large data sets, especially those having geometries with a large number of coordinates.

The chart extension (previously mentioned on this blog) is contained in the release, allowing the overlay of typical business charts on top of WMS maps.

For Windows users, this version introduces a new service-based installer, making GeoServer run like any other standard Windows service, and allowing for easier administration.

And, as usual, a host of bug fixes (over 40!) have been incorporated into this release. Give it a try!

Read More

GeoServer 2.0, now in beta

The GeoServer Team is happy to announce GeoServer 2.0-beta1, the first beta release of the 2.0 series.

The primary focus of version 2.0 is the new user interface. This interface addresses many suggestions for usability improvements, including paging and filtering of lists of information, batch removal of layers, and the elimination of the Submit-Apply-Save workflow.

filtering styles

Another particularly useful feature added since alpha2 was released is cascading delete. This feature allows a user to remove a workspace or a data store and have all the entities contained inside (such as layers) also be removed. Previously, it was necessary to delete all layers individually before being able to remove a data store. To prevent unintended deletion, a confirmation page details what will be removed.

As usual a host of other fixes and improvements (over 100!) have also been incorporated into this release. Please download, give it a try, and forward your feedback along.  We greatly appreciate reporting issues to the users mailing list and look forward to general feedback on the new user interface.

Read More

GeoServer chart extension

Business reporting is a common need in various organisations. Most of the time, it is built upon tables and simple charts, such as pie or bar charts. Yet, sometimes, you need to add an extra dimension into it, in particular, geographic distribution. In some cases a thematic map does the job nicely, but if you need to represent the composition of a phenomena relying on more than one variable, the result ends up being hard to read.

This is where the overlay of charts and maps come into play: the idea is to overlay bar chars, or pie charts, over a polygon or point map, associating each geographic feature with its own little diagram. As surprising as it may sound, you have been able to create such maps with GeoServer since a few months ago: by putting together the dynamic symbolizers feature and the Google Charts online API, it’s already possible to nicely overlay charts of top of a map. This works great in conjuction with the KML output, where the client has to go and fetch the chart separately anyways. However, it present some limitations in the classic WMS case:

  • you are depending on an external service that’s not under your control

  • if there is any missing feature, you can just ask and hope that next release will include that feature

  • rendering the charts requires remote calls, which will slow down the map rendering significantly, at least for the first requests

An open source solution, completely embedded in GeoServer, would guarantee control over the service availability, over its features, and provide excellent performance. David Gilbert, of JFreeChart fame, must have thought the same when he developed Eastwood Charts, an open source implementation of the Google Charts API.

The GeoServer charting module builds on top of Eastwood charts, bridging it with the dynamic symbolizers capabilities already available, to provide fast, in process charting over the map. Let’s have a look at an example built on top of the usual topp:states demo layer. We are going to depict the distribution of male/female population in the various states using pie charts, and to make the diagram more interesting, we’ll make the pie size proportional to the total amount of people in the state. Here is how the result will look:

You can download the full style if you like, here we’ll have a look at the snippet in which the diagram is setup:

        <OnlineResource xlink:href="http://chart?cht=p&chd=t:${100 * MALE / PERSONS},${100 * FEMALE / PERSONS}&chf=bg,s,FFFFFF00" />

Let’s analyse the components of the ExternalGraphic call, which follow the rules of a Google Charts API call:

  • cht=p: the chart type is pie

  • chd=t:${100 * MALE / PERSONS},${100 * FEMALE / PERSONS}: the chart data is expressed in “text” format, and in particular, the first value is the result of 100 * MALE / PERSONS, where MALE and PERSONS are two attributes of feature being rendered

  • chf=bg,s,FFFFFF00: we state that the chart background fill is solid, white and… transparent. In particular, the color is expressed as RRGGBBAA, where AA is the alpha component, which controls transparency. In particular 0 is fully transparent, 255 is fully opaque

The size of the chart is controlled using the usual element of external graphics, an in particular, it's setup so that it's proportional to the PERSONS attribute via the expression: `20 + (PERSONS / 20,000,000) * 60`.

We encourage you to download the chart extension and to explore its charting possibilities. You can use it with GeoServer 1.7.4, and can find out more about chart setup in the online Google Charts documentation (mind, a handful of charts and options are not supported by Eastwood, in particular, the Google-o-meter and the spider ones).

Let us know how that works for you!

Read More

New documentation launched

I’m excited to tell you about some changes to the GeoServer documentation. We are transitioning away from our wiki in favor of a new system. After much discussion, we are now using the Sphinx Documentation Generator.

Sphinx has many advantages over a wiki. The biggest advantage is that the content of the documentation is written in plain text (using a simple markup language called reStructuredText) and then “compiled” to become the finished product. With documentation now essentially just another part of the source code, it can be brought under version control. This means that we can, for the first time, have version-specific documentation, as well as the ability to allow for simultaneous editing, conflict management, and all of the other tools associated with version control.

While wikis have many advantages, a clear hierarchy is generally not one of them. (For example, one doesn’t read Wikipedia “from the beginning.”) And while search remains a feature of our documentation, Sphinx is geared towards the creation of text that can be constructed and read like a manual. Along this line, we can now create documentation in PDF, a feature that has been asked about for years.

We have soft launched the new documentation with the release of GeoServer 1.7.4. The old wiki is still live, and will remain so. But there is still much to be done, and you can help. The documentation is still very much a work in progress, and not all of the content from the wiki has been migrated. We’ve developed a guide to documentation that describes the ways that you can contribute. The most helpful way is to create content for empty or unfinished pages, and either submit a bug report with the content attached or commit the changes on your own. (If you are interested in getting commit rights to our documentation, please send an email to the GeoServer developers mailing list.) If you are aware of a page in the wiki that should be migrated to the new site, please let us know as well.

For GeoServer 1.7.4, the documentation download contains both HTML and PDF output. I encourage everyone to download, read, and make suggestions. For our part, we will continue to work to make GeoServer easy to learn, use, and understand.

Read More

GeoServer 1.7.4 Released

The GeoServer Team is happy to announce the the release of GeoServer 1.7.4, the fifth stable version in the 1.7 series.

This release contains some new features, many having to do with improved map rendering options. We have introduced WMS decoration, which provides a framework for adding images such as compasses and legends to WMS requests using absolute, not spatial, positioning. The GetFeatureInfo request, often used when clicking on an OpenLayers map, now has a parameter that can be adjusted to allow for looser tolerance, eliminating the need to click precisely on the feature. GetFeatureInfo also now observes the filters in the SLD, so as to prevent displaying information about a hidden feature. (Thanks to SATA Hi-Tech Services, an Italian company specializing in data security solutions, for providing funding for the GetFeatureInfo improvements.) Those who work with labels on your map will be pleased to note that label conflict resolution (the selective display of labels to prevent visual collisions) can now be turned off if desired. Finally, we have the ability to generate custom legends for raster files via the GetLegendGraphic request.

And, as usual, a whole host of bug fixes (over 50!) have been incorporated into this release. Give it a try!

Development work on the 1.7 series will begin to wind down in favor of GeoServer 2.0, but we anticipate the release of 1.7.5 within the next two months.

Read More