GDAL Image Formats

GeoServer can leverage the ImageIO-ext GDAL libraries to read selected coverage formats. GDAL is able to read many formats, but for the moment GeoServer supports only a few general interest formats and those that can be legally redistributed and operated in an open source server.

The following image formats can be read by GeoServer using GDAL:

Installing GDAL

GDAL is not a standard GeoServer extension, as the GDAL library files are built into GeoServer by default. However, in order for GeoServer to leverage these libraries, the GDAL (binary) program itself must be installed through your host system’s OS. Once this program is installed, GeoServer will be able to recognize GDAL data types. In order to install the GDAL Native libraries:

  1. Navigate to the imageio-ext document and files download page.

  2. Select the most recent stable binary release.

  3. Select “native libraries”.

  4. Download and extract/install the correct version for your OS.

    Note

    If you are on Windows, make sure that the GDAL DLL files are on your PATH. If you are on Linux, be sure to set the LD_LIBRARY_PATH environment variable to be the folder where the SOs are extracted.

  5. Select “libraries” from the last stable release root.

  6. Download and extract the gdal_data-1.X.X archive.

    Note

    Make sure to set a GDAL_DATA environment variable to the folder where you have extracted this file.

Once these steps have been completed, restart GeoServer. If done correctly, new data formats will be in the Raster Data Sources list when creating a new data store.

../_images/gdalcreate.png

GDAL image formats in the list of raster data stores

Note on running GeoServer as a Service on Windows

Simply deploying the GDAL ImageI/O-Ext native libraries in a location referred by the PATH environment variable (like, as an instance, the JDK/bin folder) doesn’t allow GeoServer to leverage on GDAL, when run as a service. As a result, during the service startup, GeoServer log reports this worrysome message:

it.geosolutions.imageio.gdalframework.GDALUtilities loadGDAL WARNING: Native library load failed.java.lang.UnsatisfiedLinkError: no gdaljni in java.library.path

Taking a look at the wrapper.conf configuration file available inside the GeoServer installation (at bin/wrapper/wrapper.conf), there is this useful entry:

# Java Library Path (location of Wrapper.DLL or libwrapper.so) wrapper.java.library.path.1=bin/wrapper/lib

To allow the GDAL native DLLs getting loaded, you have 2 possible ways:

  1. Move the native DLLs on the referred path (bin/wrapper/lib)
  2. Add a wrapper.java.library.path.2=path/where/you/deployed/nativelibs entry just after the wrapper.java.library.path1=bin/wrapper/lib line.

Adding support for ECW and Kakadu

Configuring a DTED data store

../_images/gdaldtedconfigure.png

Configuring a DTED data store

Configuring a EHdr data store

../_images/gdalehdrconfigure.png

Configuring a EHdr data store

Configuring a ERDASImg data store

../_images/gdalerdasimgconfigure.png

Configuring a ERDASImg data store

Configuring a JP2MrSID data store

../_images/gdaljp2mrsidconfigure.png

Configuring a JP2MrSID data store

Configuring a NITF data store

../_images/gdalnitfconfigure.png

Configuring a NITF data store

Previous: VPF