[GIS] How to install GDAL extension for GeoServer on Windows

gdalgeoserverwindows

I am in search of guidance to set up the GDAL extension for GeoServer.

I used GeoServer 2.11.0 with the geoserver-2.11.0-gdal-plugin.zip files, folowing the guide from http://docs.geoserver.org/stable/en/user/data/raster/gdal.html but gets errors running it.

Welcome to GeoServer!

JAVA_HOME: C:\Program Files (x86)\Java\jre1.8.0_121

Please wait while loading GeoServer...

WARNING: Module not found [ssl]
2017-04-27 09:24:30.623:INFO::main: Logging initialized @565ms
2017-04-27 09:24:30.770:INFO:oejs.Server:main: jetty-9.2.13.v20150730
2017-04-27 09:24:30.793:INFO:oejdp.ScanningAppProvider:main: Deployment monitor [file:/C:/Data/geoserver-2.11.0/webapps/] at interval 1
2017-04-27 09:24:31.885:INFO:oejw.StandardDescriptorProcessor:main: NO JSP Support for /geoserver, did not find org.eclipse.jetty.jsp.JettyJspServlet
2017-04-27 09:24:32.755:WARN:oejuc.AbstractLifeCycle:main: FAILED o.e.j.w.WebAppContext@1be98f5{/geoserver,file:/C:/Data/geoserver-2.11.0/webapps/geoserver/,STARTING}{C:\Data\geoserver-2.11.0\webapps\geoserver}: java.util.ServiceConfigurationError: javax.imageio.spi.ImageReaderSpi: Provider it.geosolutions.imageio.plugins.arcbinarygrid.ArcBinaryGridImageReaderSpi could not be instantiated
java.util.ServiceConfigurationError: javax.imageio.spi.ImageReaderSpi: Provider it.geosolutions.imageio.plugins.arcbinarygrid.ArcBinaryGridImageReaderSpi could not be instantiated
        at java.util.ServiceLoader.fail(Unknown Source)
        at java.util.ServiceLoader.access$100(Unknown Source)
        at java.util.ServiceLoader$LazyIterator.nextService(Unknown Source)
        at java.util.ServiceLoader$LazyIterator.next(Unknown Source)
        at java.util.ServiceLoader$1.next(Unknown Source)
        at javax.imageio.spi.IIORegistry.registerApplicationClasspathSpis(Unknown Source)
        at javax.imageio.spi.IIORegistry.<init>(Unknown Source)
        at javax.imageio.spi.IIORegistry.getDefaultInstance(Unknown Source)
        at javax.imageio.ImageIO.<clinit>(Unknown Source)

The system is:

Win 7 64bit

MSVC 2005, 2008, 2010, 2012, 2013 2015 is installed in both 64 and 32 bit

Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) Client VM (build 25.121-b13, mixed mode)

I installed the 32bit dlls and ECW driver:

gdal-1.9.2-MSVC2010.zip

gdal-19-1600-ecw.msi

For full error log see https://pastebin.com/ret8qZhi

Best Answer

I could make GDAL-ImageI/O-Ext extension work in GeoServer 2.14.1 on Windows just in ONE way: using Apache Tomcat 8.5 and installing GeoServer as a WAR. Using the Windows installer adds one more layer to the stack: the wrapper. This has proved to be a source of further troubles that can mix with all other ones making the deployment very triky.

My recipe is the following:

Make sure you have MSVC 2010 64bit installed. Is a a requirement of the GDAL native libraries.

Install Tomcat 8.5 64bit ona a 64bit JDK (I tested with 1.8.202). DO NOT GO WITH A 32bit JDK/JRE!

Use “Configure Tomcat” link in Start Menu to increase assigned RAM to 2048Mb

Copy Geoserver 2.14.1 WAR in [TomcatInstallDir]\webapps : this will make Tomcat self-deploy (unpack) the WAR into a /geoserver sub-dir and serve it on URL http://localhost:8080/geoserver (..or whatever port you choose during installation)

Uzip gdal-data.zip in C:/gdal/gdal-data

Unzip native libs GDAL from gdal-1.9.2-MSVC2010-x64.zip in C:/gdal/

Unzip GDAL Extension plugin for your Geoserver version (mine was 2.14.1) from http://geoserver.org/release/2.14.1/ into [TomcatInstallDir]\webapps\geoserver\WEB-INF\lib

Optional for JP2 / ECW support Unzip “driver” native libs forer JP2/ECW from gdal-19-1600-x64-ecw.msi (ECW lib) in C:/gdal/

Add to PATH env var: C:/gdal

Configure in Windows the following Environment variables: GDAL_DRIVER_PATH = C:\gdal GDAL_DATA = C:\gdal\gdal-data GEOSERVER_DATA_DIR = [TomcatInstallDir]\webapps\geoserver\data

The latter \data dir can be moved from the default out-of-the box location to a more sensible one. The GEOSERVER_DATA_DIR will have to reflect thischange.

* * * NOTE: As of Feb 2019 I still do not know a way to use any other, more recent version of GDAL other than v. 1.9.2 in Geoserver on Windows * * *

Related Question