Как исключить определенный читатель TIFF из ImageIO?

стек:

Java - 1.8.0_91Скала - 2.11.8Библиотека - it.geosolutions.imageio-ext imageio-ext-tiff 1.1.15

Мы читаем много старых изображений TIF, и по какой-то причине чтение крайне противоречиво - по некоторым причинам при чтении другого прогона одно и то же изображение может преуспеть или не получиться, за исключением -

javax.imageio.IIOException: Invalid component ID 3 in SOS
at com.sun.imageio.plugins.jpeg.JPEGImageReader.readImage(Native Method)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.readInternal(JPEGImageReader.java:1236)
at com.sun.imageio.plugins.jpeg.JPEGImageReader.read(JPEGImageReader.java:1039)
at com.sun.media.imageioimpl.plugins.tiff.TIFFOldJPEGDecompressor.decodeRaw(TIFFOldJPEGDecompressor.java:654)
at com.sun.media.imageio.plugins.tiff.TIFFDecompressor.decode(TIFFDecompressor.java:2527)
at com.sun.media.imageioimpl.plugins.tiff.TIFFImageReader.decodeTile(TIFFImageReader.java:1137)
at com.sun.media.imageioimpl.plugins.tiff.TIFFImageReader.read(TIFFImageReader.java:1417)

Код выглядит примерно так:

import java.io.{ByteArrayInputStream, ByteArrayOutputStream}
import javax.imageio.ImageIO

def convertToPng(data: Array[Byte]): Array[Byte] = {
    val inputStream = new ByteArrayInputStream(data)
    val image = ImageIO.read(inputStream)
    val outputStream = new ByteArrayOutputStream(inputStream.available())
    ImageIO.write(image, "png", outputStream)
    outputStream.toByteArray
}

Проблема в том, что ImageIO инициализирует 2 считывателя TIFF одновременно

 com.sun.media.imageioimpl.plugins.tiff.TIFFImageReader & 
 it.geosolutions.imageioimpl.plugins.tiff.TIFFImageReader

ИЛИ ЖЕ

 it.geosolutions.imageioimpl.plugins.tiff.TIFFImageReader
 com.sun.media.imageioimpl.plugins.tiff.TIFFImageReader 

Первый выходит из строя, второй работает. Как исключить com.sun.media.imageioimpl.plugins.tiff.TIFFImageReader из конфигурации ImageIO?

Ответы на вопрос(1)

Ваш ответ на вопрос