Скажите, чем валидатору может не нравится строчка
temps.close();
ибо последний пункт "Программа должна закрывать поток чтения из файла(FileInputStream)." не подтверждается.