TesseractOCR在web使用时遇到的问题

网上很多例子了,在做web时候报错

java.util.NoSuchElementException
    at javax.imageio.spi.FilterIterator.next(Unknown Source)

环境:

  编译使用JDK:jdk_1.6.0_30  运行时使用JDK:jdk_1.7.0_11

  web容器:tomcat-6.0.32

经过断点测试发现(imageFormat未图片格式)

Iterator<ImageReader> readers = ImageIO.getImageReadersByFormatName(imageFormat);

  迭代器中readers出现next为空(或iter中zerolist为空)。想了下应该是某些类没有加载,开始使用class.forName("xx")分别实验。后来经查找在迭代器之前先进行手动注册

IIORegistry registry = IIORegistry.getDefaultInstance();  
registry.registerServiceProvider(new com.sun.media.imageioimpl.plugins.tiff.TIFFImageWriterSpi());  
registry.registerServiceProvider(new com.sun.media.imageioimpl.plugins.tiff.TIFFImageReaderSpi());  

  之后运行通过。

参考链接:http://bbs.csdn.net/topics/370193992

原文地址:https://www.cnblogs.com/GYoungBean/p/3069180.html