Revision: 6436 http://sourceforge.net/p/jump-pilot/code/6436 Author: edso Date: 2020-09-07 14:11:23 +0000 (Mon, 07 Sep 2020) Log Message: ----------- add some robustness don't fail completely if imageio-ext gdal is missing some debug tracing added
Modified Paths: -------------- core/trunk/src/com/vividsolutions/jump/workbench/imagery/geoimg/GeoImageFactory.java Modified: core/trunk/src/com/vividsolutions/jump/workbench/imagery/geoimg/GeoImageFactory.java =================================================================== --- core/trunk/src/com/vividsolutions/jump/workbench/imagery/geoimg/GeoImageFactory.java 2020-09-07 14:06:10 UTC (rev 6435) +++ core/trunk/src/com/vividsolutions/jump/workbench/imagery/geoimg/GeoImageFactory.java 2020-09-07 14:11:23 UTC (rev 6436) @@ -46,6 +46,7 @@ import org.geotiff.image.jai.GeoTIFFDescriptor; import com.sun.media.jai.codec.ImageCodec; +import com.vividsolutions.jump.workbench.Logger; import com.vividsolutions.jump.workbench.WorkbenchContext; import com.vividsolutions.jump.workbench.imagery.ReferencedImage; import com.vividsolutions.jump.workbench.imagery.graphic.AbstractGraphicImageFactory; @@ -69,7 +70,8 @@ } public GeoImageFactory() { - // register optional codecs TODO: how to register them more effortlessly? + // register optional codecs TODO: how to register them more effortlessly + try { IIORegistry.getDefaultInstance().registerServiceProvider( new JP2GDALOpenJPEGImageReaderSpi()); IIORegistry.getDefaultInstance().registerServiceProvider( @@ -76,6 +78,9 @@ new JP2GDALEcwImageReaderSpi()); IIORegistry.getDefaultInstance().registerServiceProvider( new JP2GDALJasperImageReaderSpi()); + }catch( NoClassDefFoundError e){ + Logger.error("Can't register JP2GDAL readers.",e); + } // initialize extensions final Iterator<? extends ImageReaderSpi> iter = IIORegistry @@ -82,6 +87,8 @@ .getDefaultInstance().getServiceProviders(ImageReaderSpi.class, true); for (; iter.hasNext();) { ImageReaderSpi reader = (ImageReaderSpi) iter.next(); + //Logger.trace("GeoImageFactory - Add "+reader.getDescription(Locale.getDefault())+" ext: "+Arrays.toString(reader.getFileSuffixes())); + Logger.trace("GeoImageFactory - Add "+loaderString(reader) + " class:" + reader.getClass().getCanonicalName()); String[] exts = reader.getFileSuffixes(); // this is mainly for the NITF imageio-ext reader, which has one empty ext // supposedly because too much file extensions (?) exist for this format @@ -130,7 +137,7 @@ } public String getDescription() { - return getTypeName() + " " + loaderString(); + return getTypeName() + " " + loaderString(this.loader); } /** @@ -137,7 +144,7 @@ * prepare a proper description of a forced loader * currently "(description, version x.x, vendor)" */ - private String loaderString() { + private String loaderString(Object loader) { // a specified loader if (loader != null) { String loaderString =""; _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel