I am hoping Christian Mueller or others can help me out here. I would like to use the PostGIS 2.0 Raster capability and use it from the GeoServer ImageMosaicJDBC extension. I don’t want to store my raster data in the database because of the enormous amount of raster data I need to catalogue.
I am aware that the GeoServer ImageMosaicJDBC extension does not officially support PostGIS Raster ImageMosaicJDBC store as I read this in a forum somewhere or in the documentation, however, I would like to know how difficult it would be to add/fix this capability as it is partially working. When I try to view a layer using GeoServer’s Layer Preview of a layer created from an ImageMosaicJDBC datastore at the 4th zoom level (of 11 zoom levels) I get the follow stacktrace in GeoServer (full stacktrace attached but the below excerpt captures an error that repeats over and over as tiles are brought in):
Is there any plan to get this working in the near future? I am willing to contribute this feature if someone can point me in the right direction.
I’m using the following versions:
PostGIS 2.1.3 on PostgreSQL 9.3
GeoServer 2.5.1
ImageMosaicJDBC 11.1
Let me know if you need more info,
–Steve
===============BEGIN stacktrace====================
Request: getMap
Time =
Buffer = 0
Format = image/png
Filters = null
Filter = null
Width = 256
Height = 256
Transparent = false
Styles = [StyleImpl[ name=raster]]
Crs = GEOGCS[“WGS 84”,
DATUM[“World Geodetic System 1984”,
SPHEROID[“WGS 84”, 6378137.0, 298.257223563, AUTHORITY[“EPSG”,“7030”]],
AUTHORITY[“EPSG”,“6326”]],
PRIMEM[“Greenwich”, 0.0, AUTHORITY[“EPSG”,“8901”]],
UNIT[“degree”, 0.017453292519943295],
AXIS[“Geodetic longitude”, EAST],
AXIS[“Geodetic latitude”, NORTH],
AUTHORITY[“EPSG”,“4326”]]
Bbox = SRSEnvelope[34.638842975392 : 34.642107346478, 10.538136538337 : 10.541400909423]
Env = {}
Angle = 0.0
CQLFilter = null
Elevation =
FeatureId = null
StartIndex = null
ViewParams = null
RemoteOwsType = null
RemoteOwsURL = null
FormatOptions = {}
Layers = [org.geoserver.wms.MapLayerInfo@anonymised.com]
FeatureVersion = null
SRS = EPSG:4326
Tiled = false
MaxFeatures = null
ValidateSchema = false
TilesOrigin = null
SldBody = null
Sld = null
SldVersion = null
BgColor = java.awt.Color[r=255,g=255,b=255]
Palette = null
Exceptions = SE_XML
Version = 1.1.1
Request = GetMap
BaseUrl = http://localhost:8686/geoserver/
RawKvp = {BBOX=34.638842975392,10.538136538337,34.642107346478,10.541400909423, VERSION=1.1.1, FORMAT=image/png, SERVICE=WMS, HEIGHT=256, LAYERS=GeoCenter:geocenter_mosaic_3, REQUEST=GetMap, S
TYLES=, SRS=EPSG:4326, WIDTH=256}
Get = true
RequestCharset = UTF-8
22 Jul 16:50:14 INFO [geoserver.wms] -
Request: getServiceInfo
22 Jul 16:50:14 INFO [geoserver.wms] -
Request: getServiceInfo
22 Jul 16:50:14 INFO [geoserver.wms] -
Request: getServiceInfo
22 Jul 16:50:14 INFO [geoserver.wms] -
Request: getServiceInfo
22 Jul 16:50:14 INFO [geoserver.wms] -
Request: getServiceInfo
22 Jul 16:50:14 INFO [geoserver.wms] -
Request: getServiceInfo
Exception in thread “pool-265-thread-4” 22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
java.lang.NullPointerException
22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at com.sun.media.jai.codec.ImageCodec.getCodec(ImageCodec.java:96)
at com.sun.media.jai.codec.ImageCodec.createImageDecoder(ImageCodec.java:208)
at org.geotools.gce.imagemosaic.jdbc.ImageDecoderThread.readImage2(ImageDecoderThread.java:187)22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at org.geotools.gce.imagemosaic.jdbc.ImageDecoderThread.run(ImageDecoderThread.java:121)22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at java.lang.Thread.run(Thread.java:745)
Exception in thread “pool-265-thread-6” java.lang.NullPointerException
at com.sun.media.jai.codec.ImageCodec.getCodec(ImageCodec.java:96)
at com.sun.media.jai.codec.ImageCodec.createImageDecoder(ImageCodec.java:208)
at org.geotools.gce.imagemosaic.jdbc.ImageDecoderThread.readImage2(ImageDecoderThread.java:187)22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at org.geotools.gce.imagemosaic.jdbc.ImageDecoderThread.run(ImageDecoderThread.java:121)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Exception in thread “pool-265-thread-2” java.lang.NullPointerException
22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at com.sun.media.jai.codec.ImageCodec.getCodec(ImageCodec.java:96)
22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at com.sun.media.jai.codec.ImageCodec.createImageDecoder(ImageCodec.java:208)
at org.geotools.gce.imagemosaic.jdbc.ImageDecoderThread.readImage2(ImageDecoderThread.java:187)
at org.geotools.gce.imagemosaic.jdbc.ImageDecoderThread.run(ImageDecoderThread.java:121)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at java.lang.Thread.run(Thread.java:745)22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
Exception in thread “pool-265-thread-5” Exception in thread “pool-265-thread-1” Exception in thread “pool-265-thread-8” java.lang.NullPointerException
at com.sun.media.jai.codec.ImageCodec.getCodec(ImageCodec.java:96)
at com.sun.media.jai.codec.ImageCodec.createImageDecoder(ImageCodec.java:208)
at org.geotools.gce.imagemosaic.jdbc.ImageDecoderThread.readImage2(ImageDecoderThread.java:187)
at org.geotools.gce.imagemosaic.jdbc.ImageDecoderThread.run(ImageDecoderThread.java:121)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Exception in thread “pool-265-thread-12” 22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
java.lang.NullPointerException
22 Jul 16:50:14 WARN [imagemosaic.jdbc] - Could not read from stream, switch to JAI
at com.sun.media.jai.codec.ImageCodec.getCodec(ImageCodec.java:96)
at com.sun.media.jai.codec.ImageCodec.createImageDecoder(ImageCodec.java:208)
at org.geotools.gce.imagemosaic.jdbc.ImageDecoderThread.readImage2(ImageDecoderThread.java:187)
at org.geotools.gce.imagemosaic.jdbc.ImageDecoderThread.run(ImageDecoderThread.java:121)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
…
===============END stacktrace====================
imagemosaic-jdbc-stacktrace.txt (116 KB)