There is a little bug in the constructors of
stream.input.FileImageInputStreamExtImpl (File f, int bufferSize). The issue is
that it should throw IOException or FileNotFoundException should there be a
problem with the input file, but it is throwing IllegalArgumentException instead.
In GeoTools, this ends up having consequences in the GeoTiffFormat.accepts()
method, which expects only IOException's. Thus, if you attempt to check if the
GeoTiffFormat can accept an invalid (e.g., non-existing) file, it blows up
instead of returning false.