[Geoserver-users] GeoWebCache crashes when tiling geotiff mosaic

I am trying to create a tile cache for a mosaic of geotiffs. My separate geotiff files tend to have black irregular borders so I have set the Input + OutputTransparentColor of the layer to 000000. This seems to work wonderfully and my mosaic is (pretty much) seamless.

However – geoWebCache will not tile this mosaic for me (tiling to 900913 and down to Z10). It crashes (so far somewhere between 5s and 58s) with the following blurb (first few lines are for context only):

BaseUrl = http://localhost:8080/geoserver/

Get = true

RawKvp = {FORMAT=image/png, STYLES=raster, WIDTH=512, HEIGHT=512, LAYERS=UK_ASRP:UK 1:500K ASRP TILED LAYER, EXCEPTIONS=SE_XML, GWC_SEED_INTERCEPT=true, REQUEST=GetMap, SRS=EPSG:900913, BBOX=1252344.2712499984,8766409.89875,1878516.4068749994,9392582.034375, VERSION=1.1.1, SERVICE=WMS, TRANSPARENT=true}

RequestCharset = UTF-8

21 Sep 17:02:04 INFO [seed.GWCTask] - Thread group finished SEED task after 58.825 seconds

21 Sep 17:02:04 ERROR [seed.MTSeeder] - Problem communicating with GeoServer

org.geowebcache.GeoWebCacheException: Problem communicating with GeoServer

at org.geoserver.gwc.layer.GeoServerTileLayer.getMetatilingReponse(GeoServerTileLayer.java:568)

at org.geoserver.gwc.layer.GeoServerTileLayer.seedTile(GeoServerTileLayer.java:757)

at org.geowebcache.seed.SeedTask.doActionInternal(SeedTask.java:136)

at org.geowebcache.seed.GWCTask.doAction(GWCTask.java:76)

at org.geowebcache.seed.MTSeeder.call(MTSeeder.java:36)

at org.geowebcache.seed.MTSeeder.call(MTSeeder.java:25)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:745)

Caused by: java.lang.ClassCastException: java.awt.image.Raster cannot be cast to java.awt.image.WritableRaster

at org.geoserver.gwc.layer.GeoServerMetaTile.createTile(GeoServerMetaTile.java:180)

at org.geoserver.gwc.layer.GeoServerMetaTile.writeTileToStream(GeoServerMetaTile.java:83)

at org.geowebcache.layer.TileLayer.saveTiles(TileLayer.java:645)

at org.geoserver.gwc.layer.GeoServerTileLayer.getMetatilingReponse(GeoServerTileLayer.java:566)

… 9 more

After a bit of experimentation, I discovered that the tile cache can be fully created as long as I don’t set the transparentColor. If I leave the Input/Output colors blank, the tiling proceeds without error.

Can anyone tell me how to get around this problem? I cannot leave the black edges in the mosaic!